第一个会报错,因为int类型是无法转换成short的。所以会报错,我们可以使用类的推断,取它们的交集,即Number它是BigDecimal,BigInteger,Ingeter,Byte,Short,Long,Double,Float,而Number的子类必须提供方法将值转换成byte,short,int,long,double,float的方法。而第二个是3结果,至于是什么类型的嘛。不好说。我测试了使用int,short,Number都可以接受这个运算出来的结果。下面是我做的结果:
short s=1;
Number s5=s+2;
System.out.println(s5);
short s1=s+=2;
System.out.println(s1);
|