一、仔细阅读示例: EnumTest.java,运行它,分析运行结果? 你能得到什么结论?
枚举类型是引用类型!
枚举不属于原始数据类型,它的每个具体值都引用一个特定的对象。相同的值则引用同一个对象。
可以使用“==”和equals()方法直接比对枚举变量的值,换句话说,对于枚举类型的变量,“==”和equals()方法执行的结果是等价的。
二、原码、反码和补码
(一)原码:二进制的定点表示法,即最高位为符号位,“0”表示正,“1”表示负,其余位表示数值的大小。
(二)反码:正数的反码与其原码相同;负数的反码是对其原码逐位取反,但符号位除外。
(三)补码:正数的补码与其原码相同,负数的补码是在其反码末位加1;
例:
数字 | 原码 | 反码 | 补码 |
-1 | 10000001 | 11111110 | 11111111 |
2 | 00000010 | 00000010 | 00000010 |
以2+(-1)=1为例,1的原码为00000001,反码为00000001,补码为00000001。由此得出Java的数是由补码来表示的。
三、java变量遵循“同名变量的屏蔽原则”
每一个变量都有一个“有效”的区域,区域外变量将不再有效.java遵循同名变量的屏蔽原则。
四、Java中的类型转换
java中有8种基本数据类型:byte、int、short、long、boolean、char、float、double
对应的类为:Byte、Int、Short、Long、Boolean、Charecter、Float、Double
五、请运行以下代码(TestDouble.java),分析运行结果? 你能得到什么结论?
使用double类型的数值进行计算, 其结果是不精确的。
六、以下代码的输出结果是什么?
int X=100; int Y=200; System.out.println("X+Y="+X+Y); System.out.println(X+Y+"=X+Y");
为什么会有这样的输出结果?
JAVA输出语句中的“+”有两种意思:一是运算中的加法,另一是连接符 。其中第一中X与Y中间的+被当作了连接符而二中为加法。