动手动脑
仔细阅读示例: EnumTest.java,运行它,分析运行结果?
你能得到什么结论?你掌握了枚举类型的基本用法了吗?
Java 枚举是一个特殊的类,一般表示一组常量,比如一年的 4 个季节,一个年的 12 个月份,一个星期的 7 天,方向有东南西北等。
Java 枚举类使用 enum 关键字来定义,各个常量使用逗号,来分割。
枚举是一个类,内部可事先定义若干个值,在用枚举类定义对象时,可以从事先定义的值中选取赋值。
阅读相应教材,或者使用互联网搜索引擎,弄清楚反码、补码跟原码这几个概念,然后编写示例程序,对正数、负数进行各种位操作,观察输出结果,与手工计算的结果进行比对,看看Java中的数是采用上述哪种码表示的。
1. 原码
原码就是符号位加上真值的绝对值, 即用第一位表示符号, 其余位表示值. 比如如果是8位二进制:
2. 反码
反码的表示方法是:
正数的反码是其本身
负数的反码是在其原码的基础上, 符号位不变,其余各个位取反.
3. 补码
补码的表示方法是:
正数的补码就是其本身
负数的补码是在其原码的基础上, 符号位不变, 其余各位取反, 最后+1. (即在反码的基础上+1)
同名变量屏蔽原则
private static int value = 1;
public static void main(String[] args) {
int value = 2;
System.out.println(value);
}
Byte 8
Char 16
Short 16
Int 32
Long 64
Float 32
Double 64
Boolean 1或8或32
整形转浮点型会产生损失。
0.05 + 0.01 = 0.060000000000000005
1.0 - 0.42 = 0.5800000000000001
4.015 * 100 = 401.49999999999994
123.3 / 100 = 1.2329999999999999
会在最末尾有一点偏差
public static void main(String[] args) {
int X = 100;
int Y = 200;
System.out.println("X+Y=" + X + Y);
System.out.println(X + Y + "=X-Y");
}
字符串在前的时候,后面的格式会自动转化为字符串,而字符串相加则是前后接起来。