上题回顾与解析
判断题,对与错,为什么
1.short s1 = 1; s1 = s1 + 1;
2.short s1 = 1; s1 += 1;
解析:
1.错。基本类型间的运算,结果为其中的最大类型。s1 + 1
最大类型为int,即s1 + 1
的类型为int,将int赋值给short为窄化转换
,需要做显式转换
2.对。编译器会将+=
运算符进行优化,s1 += 1;
相当于s1 = (short)(s1 + 1)
System.out.println(3.0*10 == 30.0);
System.out.println(3.14*10 == 31.4);
System.out.println(3.1415*10 == 31.415);
返回结果是啥?