Java一些基础语法

1、标识符规则 --- 类,方法,变量,同时也是包名的规范

    由字母,数字,下划线和货币符号组成,不能以数字开头。

    大小写敏感

    没有长度限制,不能有空格

    不能使用Java的关键字和保留字

 

    java中的关键字:

    goto和const在java中虽然不再使用但是还作为保留字存在

    java中没有sizeof这个关键字了,java中的boolean类型的值只能用true和false,且这两个也是关键字  

    enum 枚举   assert 断言

  

    一个标识符尽量符合语义信息,提高程序可读性

    类      名 :每个单词首字母大写,

    变量和方法 :第一个单词小写,后边的每个单词首字母大写

    包      名 :全部小写

    常      量 :全部大写

  

2、局部变量:定义在方法中的变量

   (1)先赋值后使用  

   (2)从定义变量的代码块开始到代码块结束

   (3)在同一范围内不允许两个局部变量发生命名冲突

3、Java的数据类型

  (1)简单类型 --- 8种有符号的数据类型

       a) 整型

          byte       1字节    8位       -128到127

          short      2字节    16位      -2^15到2^15-1  -32768 到 32767

          int        4字节     32位      -2^31到2^31-1  -2147483648 到 2147483647    整型值存放,正数存放原码(二进制码),负数则存放补码(原码按位取反末位加一)。

          long       8字节    64位      -2^63到2^63-1  long a = 40000l;  //在数字的结尾加“l”,表示long类型的字面值

       b) 浮点类型

          float      4字节     32位       float a = 1.3f;

          do le     8字节    64位       do le a = 1.3;

          do le和long比较,do le 表示的数值要大,因为有科学计数法

          float a = 1.3;  //error 会造成精度丢失,强转float a = (float)1.3;或者float a = 1.3f;

       c) 字符类型

          char       2字节    16位

       d) 布尔型

          boolean    false/tr    //Java中false与0不能转换

        

       自动类型提升:

            a 运算符 b

         a和b中有一个是do le ,  结果就是do le    

         a和b中有一个是float ,  结果就是float

         a和b中有一个是long ,  结果就是long

         除以上之外的情况,结果都是int

       

       char是无符号的16位整数,字面值必须用单引号括起来; 'a'

       String 是类,一个String的字符串是一个对象,非原始数据类型;

       在字符串中使用"+",表示字符串的连接,系统重载了这个运算符

       char类型也可以用通用转译字符,但是不能用ASCII码。可以用“\”(十六进制)这种格式,因为char型中使用的是unicode编码方式。

       char c1 = 'a';

       char c2 = 97;

       char c3 ='\a';  //一个字节用2个十六进制的数字表示

     

       整数除0有异常,do le除0没有异常

     

  (2)对象类型      

 

4、java中的运算符(java的运算符的优先级和结合性和c++相同)

 

   * System.out.println(3/2)  按整型计算 得1  

   byte a = 1;

   a=a+2;    //不合法,自动类型提升,赋值丢失精度

   a += 2 ;  //不会发生自动类型提升的,合法

   a++ ;     //不会发生自动类型提升的

 

   1) >>=  前面是零补零,前面是一补一;   右移一位比除以2效率高

   2) >>>=  无符号右移(强制右移都会移进零),

           >>=和>>>=对于负数不一样

      正数:右移n位等于除以2的n次方

      负数:变成正数。

 

posted @ 2014-04-02 22:46  = LH  阅读(173)  评论(0)    收藏  举报