本帖最后由 杨增坤 于 2013-9-11 17:43 编辑
- class Demo1
- {
- public static void main(String[] args)
- {
- int a=3;
- byte b=4;
- a=a+b;
- System.out.println(a);
- }
复制代码- class Demo2
- {
- public static void main(String[] args)
- {
- int a=3;
- byte b=4;
- b=a+b;
- System.out.println(b);
复制代码- class Demo3
- {
- public static void main(String[] args)
- {
- byte a=3,b=4,c;
- c=a+b;
- System.out.println(c);
- }
复制代码 对Demo2编译时提士“b=b+a"可能损失精度;对Demo3编译时提士”c=a+b“QvodPlayer;而为什么偏偏对Demo1编译没有问题;这三个有什么区别么?请高手帮忙分析为什么Demo1里的a=a+b (a和b也是不同类型的数据)编译后没有出现提示可能损失精度呢? |