Java基础复习之一篇:关健字,标识符,注释,常量,进制转换,变量,数据类型,数据类型转换

1、关健字

     1.1、被Java语言赋予特定意义的单词(如:class,interface,public ,static)

     1.2、全部是小写

     1.3、注意事项(goto和const作为关健字保留起来)

2、标识符

     2.1、给类,接口,方法,变量起名字的字符

     2.2、组成规则(A:英文大小写,B:数据,C:$ _)

     2.3、注意事项(不能为数字开头,不能是java中的关健字,区分大小写)

     2.4、常见的命名规则(见名知意)

            A:包   全部是小写

                      单级包:小写 如:peng,com

                      多级包:小写 如:cn.hcc,ts.hnyj,com.baidu

            B:类与接口:

                       一个单语:首字大写 如 Hello,Student

                      多个单词:每个单词首字大写 如HelloWorld,StudentName

            C:方法与变量:

                       一个单词:首字小写 如name,main,get

                       多个单词:首字小写,从第二单词开始首字大写 如showAllStudents,getPersonName,className

            D:常量: 全部大写

                       一个单词时:全部大写

                       多个单词时:多部大写同时每个单词之间用_分开 如 MAX_AGE

 3、常量

          3.1 在程序执行的过程中,其值不发生改变的量

          3.2 分类:

                3.2.1、字符串常量 "hello",

                3.2.2、整数常量  12,23,

                3.2.3、小数常量  12.33,

                3.2.4、布尔常量  true,false

                3.2.5、字符常量   'a','b'

                3.2.6、空常量

        3.3 在Java中针对整数常量提供了四种表现形式

                A:二进制    以0,1组成,以0b开头

                B:八进制    以0---7组成,以0开头

                C:十进制    以0----9,整数默认是十进制

                D:十六进制  以0----abcdef(大小写都可以)以0x开头

 4、进制之间接转换

      其它进制转换到十进制的方法是:

       1112             =          1*10^3  +  1*10^2  +  1*10^1+2*10^0      =            1000+100+10+2      =                   1112

       0b00001010  =          1*2^3   + 1*2^0                                         =             8 + 2                     =                    10

       02120           =           2*8^3  + 1*8^2     +1*8^1                         =            1024+128+16        =                   1104

       0xa02           =           10*16^2+0+2*16^0                                 =              2560+2                 =                   2562

     二进制到十进制的互转

      0b10100100=128  64 32 16 8 4 2 0============128+32+4==========164(看位得值法)

     十制转其它进制的方法:除基到商为0取余反转过来就是他的值

      21转二进制:10101 

  5、变量与数据类型:

        1、基本类型:4类8种                占用字节数(一个字节占8位)

             1.1、整型:1.1.1 、 byte     1------- 

                             1.1.2、  short   2

                             1.1.3、  int       4

                             1.1.4、  long     8

             1.2、浮点型:

                              1.2.1、float     4

                              1.2.2、double  8

             1.3、布尔   true/false         1

             1.4、字符    char                2

             注意:整数默认是int,浮点默认是double    long定义时加L/l   float 定义时加F/f

             默认转换:是由小到大:byte  char  short(前三者不互相转换,是直接转换成int)---------->int------------>long------------->float-------->double

             强制转换是由大到小:是默认反转过来可能丢失精度,一般不见建议

             思考题:

             float f1=12.36f 与float f2=(float)12.36;有区别?

            下面的程序有问题吗?如果有,在哪里?

                 byte b1 = 3;

                 byte b2 = 4;

                byte b3 = b1 + b2;------这里会有问题:因为两个变量相加首先转成int然后再加    int------->byte就会有问题

                byte b4 = 3 + 4;----这个没有问题

            下面的操作结果是什么?

             byte b=(byte)130; -126要了解它的计算方法

             130转成二进制是00000000 00000000 00000000 10000010-------->但由于是强转成byte   前面三位都将去掉只留

             10000010----------->最高是1说明是负数  存在计算机中是以补码的形式存在:所以是求负数的反,原码

            反码:1----------->00000 01

            原码:1---------->11111 10

            再转换十进制:-64+32+16+8+4+2===-126

           再练习一次:

           byte tt =(byte)150  tt=-106

        2、引用类型:类,接口,数组,字符串

        3、记得三个字符的ASCII码: a=97   A=65    0=48  这样可以计算出很多值出来

        4、思考题:字符串参与的运算

         System.out.println("hello"+'a'+1);======helloa1

         System.out.println('a'+1+"hello");======98hello

         System.out.println("5+5="+5+5);======5+5=55

         System.out.println(5+5+"=5+5");===== 10=5+5

 

  6、补充知识:

       计算机是以补码存在的,

        正数的原,反,补码都是一样最高位是(0)

        负数的原,反,补码不一样最高位是(1) 原到反直接取反,最高位不变          反到补最高位不变+1   

 

posted on 2015-05-20 17:35  peter.peng  阅读(536)  评论(0编辑  收藏  举报