考虑:数据值和类型
int x = 10;
double d = -3.0;
boolean f = false;
为什么下面仍然是一个双重它被强制转换为int后...对于第二个也是,为什么它输出float时定义为长?:
(int) d/2.0
(long) d * 2f
2.
为什么下面的第一个打印一个字符串(?),而后者是一个数字?
"2" + x + 2
"3" + 3 * x
但后来有一个与下面的错误:
"5" + i + 2
此外,在follwing,什么是真正发生的事情,结果是什么?
d++ + d
4.
当Math.round时,为什么不把它转换以下双成浮动,或者是他们同样的事情?
Math.round(x/d)
什么是'i'?... – 2011-12-28 16:05:02
这些都是很多不相关的问题,不使它成为一个伟大适合SO ... – 2011-12-28 16:05:31
第一个和第二个是运算符优先级(http://introcs.cs.princeton.edu/java/11precedence/),第三个是缺少的上下文(什么是“我”?)和最后一个: 去尝试一下。 – 2011-12-28 16:06:06