课后作业2
动手动脑1:枚举是引用类型,每个枚举常量是唯一的实例;
可以使用 ==
比较枚举值,因为相同枚举常量引用同一个对象;
枚举可用于 switch
,case 中直接写枚举常量名;
枚举提供了类型安全,比直接用整数常量更可靠。
动手动脑2:第一行输出分析:
"X+Y=" + X + Y
运算从左到右进行:
"X+Y=" + X
→"X+Y=" + 100
→"X+Y=100"
(字符串拼接)"X+Y=100" + Y
→"X+Y=100" + 200
→"X+Y=100200"
所以第一个输出是: X+Y=100200
第二行输出分析:
X + Y + "=X+Y"
运算从左到右进行:X + Y
→100 + 200
→300
(整数加法)300 + "=X+Y"
→"300=X+Y"
(字符串拼接)
所以第二个输出是:300=X+Y
结论:当+
一边是字符串时,它作为字符串连接符,另一边的非字符串类型会被自动转为字符串;
运算顺序从左到右,如果一开始是数字相加,会先做数值加法,直到遇到字符串才转为拼接。
课后实验:输出结果是0.05 * 0.01 = 0.0005000000000000001
1.0 - 0.42 = 0.5800000000000001
4.015 * 100 = 401.49999999999994
123.3 / 100 = 1.2329999999999999
明确列出了浮点运算的误差现象,这是由 IEEE 754 浮点数表示法的局限性导致的。