关于操作符的迷惑问题,抢分者乱入 short s=1;short s=s+1;这是肯定不对的,但是为什么short s=1;short s+=1;这样写就对呢??困惑!请高手解答!! 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 short s=1;short s=s+1;这只知道这个,因为加法运算一边是short一边是int,所以这个运算结果会是int,而左边却是short s 所以说这个不行,或者强制转换才可以。 前一个是自动类型提升:short-->int下一个是不会出现自动类型提升,就是这样规定的 我不明白的就是这样写为什么是对的:short s=1;short s+=1 我的理解是short s=s+1由于int型的1,导致s自动转型为int所以错误但是s+=1其实应该和c++中的操作符重载一样,+=可以看作是一个函数,这样就可以认为是(short)(s+=(1));全是猜测,谈谈而已:) 前一个是自动类型提升:short-->int下一个是不会出现自动类型提升,就是这样规定的正确 java 解惑 书上有解释记得好像是T+=T 是带隐式转换的 我用jdk1.6short i = 1;i += 1;通过编译 HttpURLConnection无法得到cookie [百度分享]如何减少浏览器的repaint和reflow(一) 关于@符号的疑问,见笑了? 关于 ECSide的一个问题 100分求答案(数据采集cookie) 求大哥或美女给帮个忙? JAVA2核心技术上的一个问题,请指教 怎样让"文件选择对话框"中的"文件","文件类型"等文字显示为英文? 大神请进,如下日志输出场景能否通过log4j的配置搞定 IBM Visualage Java中的Scrapbook 一个简单JSP输出问题???? 概念问题,近来看看.
这只知道这个,因为加法运算一边是short一边是int,所以这个运算结果会是int,而左边却是short s 所以说这个不行,或者强制转换才可以。
下一个是不会出现自动类型提升,就是这样规定的
但是s+=1其实应该和c++中的操作符重载一样,+=可以看作是一个函数,这样就可以认为是
(short)(s+=(1));
全是猜测,谈谈而已:)
下一个是不会出现自动类型提升,就是这样规定的
正确
记得好像是T+=T 是带隐式转换的
short i = 1;
i += 1;
通过编译