1. 首页
  2. 挽救婚姻
  3. 正文

什么是java复合语句

Java中的复合运算符,如+=、-=等。,一般来说a = a+b和a += b是等价的,但实际上严格来说不是等价的,只是两者有一些区别。

例如:

公共类TestCompositeOperator {

公共静态void main(String[] args) {

short a = 5;

短b = 10

a = a+b;//这里会报告一个错误

system . out . println(a);

}

}

因为在Java中,任何小于int的整数在参与运算时都会被当作int类型,即a = a+b;在参与运算的过程中,这里右边的A和B被当作int类型,运算的结果当然是int类型。如果要将int类型赋给short类型,必须对其进行强制转换,否则会报错;

但是:

公共类TestCompositeOperator {

公共静态void main(String[] args) {

short a = 5;

短b = 10

a+= b;//这是正确的

system . out . println(a);

}

}

因为在Java中,像+=这样的复合运算符实际上包含了强制类型转换,也就是上面的代码a+= b;有且a =(短)(a+b);等价。

所以在实际使用中一定要牢记基本的操作准则,否则很容易犯一些莫名其妙的错误。

本文来自投稿,不代表本人立场,如若转载,请注明出处:https://www.wonderware.com.cn/1365.html

(function(){ var src = (document.location.protocol == "http:") ? "http://js.passport.qihucdn.com/11.0.1.js?1d7dde81dc0903e04d3ac0b9599444f6":"https://jspassport.ssl.qhimg.com/11.0.1.js?1d7dde81dc0903e04d3ac0b9599444f6"; document.write('<\/mip-script>'); })(); (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();