读书人

JAVA中一个关于赋值精度有关问题。答案

发布时间: 2012-04-12 15:46:35 作者: rapoo

JAVA中一个关于赋值精度问题。在线等答案。
short s=1;s=s+1;和short s=1;s+=1;
为什么会不同?求详解。

[解决办法]
short s=1; //s是short型
s=s+1; //s是int型,类型没有转换,所以错误

short s=1;//s是short型
s+=1;//s 仍然是short型,好像是s+=1和s=s+1是相等的,但是他们的编译过程是不同的,s=s+1两边的类型不一样,但是s+=1是s=s的,是相加过后进行类型转换过后再赋值给s 的。

读书人网 >Java相关

热点推荐