您的位置:程序门 -> java -> j2se / 基础类



short s1 = 1; s1 = s1 + 1;有什么错? short s1 = 1; s1 += 1;有什么错?


[收藏此页] [打印本页]选择字色:背景色:字体:[][][]


short s1 = 1; s1 = s1 + 1;有什么错? short s1 = 1; s1 += 1;有什么错?[已结贴,结贴人:xiaoxiao8372]
发表于:2007-07-12 19:38:16 楼主
short   s1   =   1;   s1   =   s1   +   1;   (s1+1运算结果是int型,需要强制转换类型)
short   s1   =   1;   s1   +=   1;(可以正确编译)

表达式s1   =   s1   +   1   与     s1   +=   1是相同地啊!
发表于:2007-07-12 20:16:221楼 得分:1
我的理解:
short   s1   =   1;(此处已经将s1转换为int   型)   s1   =   s1   +   1;  
short   s1   =   1;   s1   +=   1;
发表于:2007-07-12 20:52:272楼 得分:9
不相同
si   +=a(a为任意数字)的定义为s1=((t)(s1+a)),t为a的类型,
你说这与s1=s1+a一样吗?
你的例子为s1=s1+1,这1在short的范围之内,   当然没区别,你这样就有区别了,short   s1   +=123456
s1的结果为-7616
发表于:2007-07-12 21:10:443楼 得分:0
能自动隐式转换
发表于:2007-07-12 21:29:244楼 得分:0
楼上正解!


快速检索

最新资讯
热门点击