课后习题1
1.EnumTest.java实验:
结果:false false true SMALL MEDIUM LARGE
结论:枚举类型是引用类型。枚举不属于原始数据类型,它的每个具体值都引用一个特定的对象。相同的值则引用同一个对象。可以使用“==”和“equals()”方法直接比对枚举变量的值,换句话说,对于枚举类型的变量,“==”和“equals()”方法执行的结果是等价的。
2.TestDouble.java实验:
结果:
0.05 + 0.01 = 0.060000000000000005
1.0 - 0.42 = 0.5800000000000001
4.015 * 100 = 401.49999999999994
123.3 / 100 = 1.2329999999999999
问题:输出的书不只是单单的几位小数,而是后面还有许多位小数。
结论:使用double类型的数值进行计算,起结果是不精确的。
解决方法:使用BigDecimal类。
3.下列代码的输出结果会是什么?
int X=100;
int Y=200;
System.out.println("X+Y="+X+Y);
System.out.println(X+Y+"=X+Y");
结果为:
X+Y=100200
300=X+Y;
为什么会有这样的结果:字符串位置不同,输出结果也不同。
浙公网安备 33010602011771号