一次小小的总结https://github.com/DuGuQiuBai/Java/blob/master/day02/day02%E6%80%BB%E7%BB%93.txt

 1:常量(掌握)
     (1)常量:在程序的运行过程中,其值不发生改变的量。
     (2)常量的分类:
         A:字面值常量
         B:自定义常量(面向对象部分讲)
     (3)字面值常量
         A:字符串常量 用""括起来的内容。举例:"helloworld"
         B:整数常量 举例:1,200
         C:小数常量 举例:12.5
         D:字符常量 用''括起来的内容。举例:'a','A','0'
         E:布尔常量 比较特殊,只有两个值。举例:true,false
         F:空常量 null(数组部分讲)
     (4)Java中针对整数常量的表现形式
         A:二进制
             由0,1组成。以0b开头
         B:八进制
             由0,1,2,3,4,5,6,7组成。以0开头
         C:十进制
             由0,1,2,3,4,5,6,7,8,9组成。默认是十进制。
         D:十六进制
             由0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F组成。以0x开头。
             注意:字母不区分大小写。

 2:进制(理解)
     (1)一种计数的方式。x进制表示逢x进1。
     (2)进制转换
         A:其他进制到十进制
             系数*基数^权之和。
         B:十进制到其他进制
             除基取余,直到商为0,余数反转。
         C:快速转换
             a:二进制和十进制
                 8421码
             b:二进制和八进制
                 三位组合
             c:二进制和十六进制
                 四位组合
         D:任意X进制到任意Y进制的转换
             可以使用十进制作为桥梁即可。

 3:有符号数据表示法(理解)
     (1)计算机中数据的存储和运算都是采用补码进行的。
     (2)数据的有符号表示法
         用0表示正号,1表示负号。
         A:原码
             正数:正常的二进制
             负数:符号为为1的二进制
         B:反码
             正数:和原码相同
             负数:和原码的区别是,符号位不变,数值位取反。1变0,0变1
         C:补码
             正数:和原码相同
             负数:反码+1
     (3)数据的有符号表示法练习
         A:已知原码,求反码和补码
         B:已知补码,求原码。
     (4)补充:float浮点数在计算机中的表示
             符号位        指数位        底数位
             S        E        M
 3:变量(掌握)
     (1)变量:在程序的运行过程中,其值发生改变的量。
     (2)定义格式:
         A:数据类型 变量名 = 初始化值;
         B:数据类型 变量名;
           变量名 = 初始化值;

 4:数据类型(掌握)
     (1)数据类型分类
         A:基本类型:4类8种
         B:引用类型:类,接口,数组
     (2)基本类型
         A:整数            占用的内存空间
             byte        1
             short        2
             int        4
             long        8
         B:浮点数
             float        4
             double        8
         C:字符
             char        2
         D:布尔
             boolean        1

         面试题:Java中的字符可以存储一个汉字吗?为什么呢?
     (3)注意事项:(特别注意)
         A:整数默认是int类型,浮点数默认是double类型(运算中一定要特别注意隐式转换)
         B:定义long类型数据的时候,建议加上L或者l。推荐L
           定义float类型数据的时候,建议加上F或者f。推荐F
           (不加f或F编译会报损失精度的错误)
     (4)使用变量的注意事项
         A:作用域
             每一个变量在它所属的大括号内有效,并且,同一个作用域不能定义同名的变            量。(for循环()中定义的变量与在for{}中定义有相同的作用域)
         B:初始化值
             变量必须先声明,赋值,最后才能使用
         C:在一行上定义的问题
             可以在一行上定义多个变量,但是不建议。

             int a,b;
             a = 10;
             b = 20;

             int a = 10,b = 20;

             int a = 10;
             int b = 20;

 5:类型转换(掌握)
     注意:
         boolean类型不参与。
     (1)隐式转换:从小到大
         byte,short,char --> int --> long --> float --> double

         long为什么可以到float呢?
             A:因为long和float的底层存储结构不同。
             B:数据范围
                 long: 2^63
                 float: 3.4*10^38

                 3.4*10^38 > 3.4*8^38 = 3.4*2^3^38 = 3.4*2^114 > 2^63
     (2)强制转换:从大到小
         一般不建议这样做,因为可能有精度的损失。
         格式:
             目标数据类型 变量名 = (目标数据类型)(被转换的数据);

 6:运算符(理解)
     (1)运算:对常量和变量进行操作的过程称为运算。
     (2)运算符:对常量和变量进行操作的符号称为运算符
     (3)表达式:由运算符把常量和变量连接起来的式子
         注意:表达式必须有结果

 7:算术运算符(掌握)
     (1)+,-,*,/,%,++,--
     (2)+:
         正号
         加法
         字符串连接符
     (3)%和/的区别
         %:余数
         /:商
             整数相除,结果是整数。想得到小数,可以乘以或者除以1.0

         %的结果的符号和前面的那个数一致。
     (4)++,--
         A:单独使用
             放在数据的前面和后面效果一样。
         B:参与操作使用
             放在数据的前面,先数据变化,再参与运算。
             放在数据的后面,先参与运算,再数据变化。
         C:++,--的练习题。

 8:赋值运算符(掌握)
     (1)=,+=,-=,*=,/=,%=,...
     (2)基本用法
         int a = 10;
         把10赋值给int类型的变量a。
     (3)复合用法
         int a = 10;
         a += 20;
         值等价于:a = a + 20;
         把左边和右边的结果赋值给左边,并强制转换为左边的类型。
     (4)面试题
         short s = 1; s = s + 1;
         short s = 1, s +=1;
         哪个有问题。

 9:关系运算符(掌握)
     (1)==,!=,>,>=,<,<=
     (2)注意:
         A:无论表达式简单还是复杂,结果肯定是boolean类型
         B:千万不要把"=="写成"="

 10:逻辑运算符(掌握)
     (1)&,|,^,!,&&,||
     (2)单用法
         &:有false则false
         |:有true则true
         ^:相同false,不同true(情侣关系)(交换两个变量的值的四种方式)
         !:偶数个,值不变;奇数个,值相反。
     (3)双用法:
         &&,||和&,|的区别

         &&具有短路效果,左边为false,右边不执行。
         ||具有短路效果,左边为true,右边不执行。
05-11 22:50