java的基本使用语法!

java基本语法(一)——数据类型
    Java语言提供了八种基本类型。六种数字类型(四个整数型,两个浮点型),一种字符类型,还有一种布尔型。Java另外还提供大数字对象,但它不是Java的数据类型。
    1、整数:
    定义:没有小数部分的数字,负数是允许的。
    种类:Java提供四种整数类型:
    int 4个字节 -2,147,483,648到2,147,483,647
    short 2个字节 -32,768到32,767
    long 8个字节 -9,223,372,036,854,775,808L到9,223,372,036,854,775,807L(最好带上L因为系统再碰到一个数时会默认把他当成int类型的)
    byte 2个字节 -128到127
    2、浮点数:
    定义:含有小数部分的数字。
    分类:Java提供两种浮点数:
    float 4个字节 约+—3.40282347E+38F(6~7个有效的十进制数位)
    double 8个字节 约+-1.79769313486231570E+308(15个有效数位)
    说明:
    1)float类型的数值有个后缀:F,如果没有后缀F,那么默认为double。double类型的数值也可以使用后缀D。
    2)当这些数字遇到取值范围错误时,会发生(上溢Overflow);而在遇到象被零除时,会发生下溢(Underflow)。
    3、字符类型:
    定义:单引号用来表示char常量。
    说明:
    1)双引号则表示一个字串,他是Java的一个对象,并不是数据类型。
    2)char类型表示Unicode编码方案中的字符。
    Unicode可同时包含65536个字符,ASCII/ANSI只包含255个字符,实际上是Unicode的一个子集。Unicode字符通常用十六进制编码方案表示,范围在'\u0000'到'\uFFFF'之间。\u0000到\u00FF表示ASCII/ANSI字符。\u表示这是一个Unicode值。
    3)在Java中除了用这个\u的形式来表示字符外,还可以使用换码序列来表示特殊字符。
    \b 退格 \u0008
    \t Tab制表 \u0009
    \n 换行 \u000a
    \r 硬回车 \u000d
    \" 双引号 \u0022
    \' 单引号 \u0027
    \ 反斜杠 \u005c
    4)理论上在Java的应用程序和小应用程序中使用Unicode字符,但至于他们是否能真正显示出来,却要取决于使用的浏览器和操作系统,其中操作系统是最根本的。
    4、布尔类型:
    boolean类型只有两个值:false和true。  
  
   java基本语法(二)——变量和常量
  
    1、变量:
    定义:相信对于它的定义应该不用在说了:)大家应该已经熟悉又熟悉了。
    例如:
    a,a1,name等都是合法的变量。
    说明:
    1)Java要求在使用一个变量之前要对变量的类型加以声明。
    2)Java中一个变量的声明就是一条完整的Java语句,所以应该在结尾使用分号。
    3)变量的命名规则:
    变量必须以一个字母开头。
    变量名是由一系列字母或数位的任意组合。
    在Java中字母表示Unicode中相当于一个字母的任何字符。
    数位也包含0-9以外的其他地位与一个数位相当的任何Unicode字符。
    变量名区分大小写。
    变量名的长度基本上没有限制。
    如想知道Java到目前位置认为哪些Unicode字符是字母的话,可以使用Character类中的isJavaIdentifierStart以及isJavaIdentifierPart方法进行检查。
    变量名中不能使用Java的保留字。
    4)可在一条语句中进行多个变量的声明,不同变量之间用逗号分隔。
    2、变量的赋值和初始化:
    变量的值可以通过两种方法获得,一种是赋值,给一个变量赋值需要使用赋值语句。另外一种方法就是初始化,说是初始化,其实还是一个赋值语句,只不过这个赋值语句是在声明变量的时候就一起完成的。
    例如:
    int a =10; //这就是一个变量初始化的过程
    下面两条语句的功能和上面一条的功能相同,只是这里将变量的声明和赋值分开来进行的。
    int a;
    a =10; //在赋值语句的结尾应该是用分号来结束。
    说明:
    1)在Java中绝对不能出现未初始化的变量,在使用一个变量前必须给变量赋值。
    2)声明可以在代码内的任何一个位置出现,但在方法的任何代码块内只可对一个变量声明一次。
    3、常量:
    定义:值不变的量称为常量。
    例如:
    1,“hello”
    说明:
    1)在Java中使用final关键字来定义一个常数。
    int final a=10; //声明了一个整型常量a,它的值是10。
    2)习惯上将常量的名字统统大写。
  
  
   java基本语法(三)——运算符和类型转换
  
    1、运算符:
    1)Java语言中,常用的运算符包括:+,-,*,/,这些就不用说了,大家肯定很熟悉了。
    2)幂:Java没有乘幂运算符,必须使用Math.pow(x,a)方法,表示x的a次幂。pow方法的两个参数都属于double类型,返回的值也是double类型。
    例如:
    double a = Math.pow(10,3); //定义了一个变量a,它的值是10的3次幂。
    3)递增、递减运算符:
    a++,a-- 先使用变量的值,然后再递增或递减。
    ++a,--a 先递增或递减然后再使用变量的值。
    4)关系和布尔运算符:
    关系运算符:==,!=,<,>,<=,>=
    布尔运算符:&&(与), ||(或), !(否)
    5)按位运算符:
    &(加),|(或),^(异或),~(否),>>向右移位,<<(向左移位),> >>(用零来填充位于顶部的位)
    注意Java没有<<<运算符。
    6)括号和运算符分级:
    在Java中各种运算符默认的计算顺序是:
    [],()(方法调用) 从左到右
    ! ~ ++ -- +(一元) -(一元) () (造型) new 从右到左
    + / % 从左到右
    + - 从左到右
    << >> > >> 从左到右
    < <= >= > instanceof 从左到右
    == != 从左到右
    & 从左到右
    ^ 从左到右
    | 从左到右
    && 从左到右
    || 从左到右
    ?: 从左到右
    = += -= *= /= &= |= ^= <<= >>= . >>= 从右到左
    在Java中可以使用括号来指定自己希望的计算顺序,从而改变运算符默认的运算顺序。
    2、数值类型的互相转换:
    当不同数据类型的数据参加运算的时候,会涉及到不同的数据类型的转换问题:
    Java语言数据类型的转换基本上按照下面的规则进行:
    如果其中一个运算对象是double类型的,另一个也会被转换成double类型。
    否则,如果其中一个运算对象是float类型的,另一个也会被转换成float类型的。
    否则,如果其中一个运算对象是long类型的,另一个也会被转换成long类型的。
    否则,如果其中一个运算对象是int类型的,另一个也会被转换成int类型的。
    否则,如果其中一个运算对象是short类型的,另一个也会被转换成short类型的。
    类型转换还可以通过强制类型转换来实现,语法很简单,将目标类型放在括号里,然后在后面跟上一个变量名就可以了。
    例如:
    double x = 9.99;
    int nx=(int)x; //这时nx就是一个int类型的数据了,并且它的值是9,后面的部分在造型过程中被丢掉了。

    Java还允许将一种类型的变量值赋给另一个变量,同时不进行显示造型,同样可以进行某些特定的赋值转换,允许的转换包括:
    buty->short->int_>long->float->double char->int
    当进行赋值的时候,会按照上面的顺序从左向右转换。
  
  
   java基本语法(四)——字符串和数组
  
    1、字符串:
    Java没有提供内建的字符串类型,但标准Java库中包含了一个预定义类,很自然地称作“String”,每个用双引号封闭的字符串都是String的一个实例。
    例如:“abc","hello"
    Java允许使用 "+" 号把两个字符串连接起来。连接一个字符串和一个非字符串值时,后者被转换成字符串。这个特性常用于输出语句中。

Java中字串中头一个字符的位置是0,
    可以使用length方法得到字符串的长度。
    可以使用charAt(n)来提取位置n处的字符。
       注意:不能使用==来判断两个字符串变量是否相等。
    2、数组:  Java语言中,数组是第一类对象。当建立一个数组后,就不能轻易地改变它的大小。当你试图对数组声明边界外的任何一个元素进行访问时,程序运行就会中止,但编译的时候可以通过。
    Java有一个建立一个数组对象并同时提供初始化值的简写形式:
    int[] smallPrimes ={2,3,4,5,6};
    另外可以初始化一个“匿名数组”:
    new int[] {2,3,4,5,6};
    当将一个数组作为方法的参数时,又不想建立一个本地数组变量来保存数组,就可以使用匿名数组的方法。
    如果想知道一个数组包含的元素数量,可以使用arrayName.length方法。
    数组的复制:可以把一个数组变量复制给另一个,但两个变量引用的都会是相同的数组,可以使用
    System.arraycopy(from,fromIndex,to,toIndex,count);方法。
    数组作为参数使用:Java中数组作为参数,使用的是引用的方式,即传递的数组的地址,在方法中改变数组元素的值可以改变源数组元素的值。
    数组作为返回值使用:一个方法可以返回一个数组。
    多维数组:
    Java语言中可以定义一个二维数组,但没有多维数组。多维数组实际上是通过数组的数组来实现的。
  一个数组的示例用法:

int[] a;
   a=new int[10];
   for(short i=1;i<=10;i++)
   {
    System.out.println(a[i-1]+" 的平方是 :"+a[i-1]*a[i-1]);
   }

   java基本语法(五)——控制流程
  
    1、控制流程:
    控制流程是任何一种程序语言都要提供的,Java提供的控制流程和许多其他的程序语言基本上是相同的。
    1)条件语句:
      if (条件) 语句;
      if (条件) { 代码块 }
      if (条件) 语句; else 语句;
      if (条件) { 代码块 } else { 代码块 }
    2)不确定循环:
       while (条件) { 代码块 }
       do { 代码块 } while (条件);
      3)确定循环:
     for(int i=1; i <= 10; i++) { 代码块 }
    在for语句的第一个位置声明了一个变量后,这个变量的作用域会扩展到for循环主体结束。但循环之外是不能使用这个变量的。
    4)多重循环:
 

switch(choice)
       {
            case 1:
              comment 1;
              break;
              case 2:
              comment 2;
              break;
              default:
              comment 3;
              break;
        }

    default从句是可选的。switch语句只能对char类型或除了long之外的其他整数类型进行测试。