java int范围编程题 int i = 0; x = i++ - ++i;输出x的值等于-2

如果 i 是系统类型两者没有性能區别。绝大多数编译器可以生成同效率代码由于所谓的多余复制的变量并没有被用到(i++的返回值无人使用),所以编译器优化之后跟++i等價

两者性能区别理论上存在于当 i 是一个自定义的类,并且这个类重载了++操作符并且这个类重载「后增量」操作符时使用了值复制作为返回值的情况,在这种情况下有时编译器能优化掉多余的复制,有时不能所以++对于自定义对象类型来说会有题主所说的情况。

}

反汇编看一下你就知道了

不好意思哈,我问题写错了那个C#程序中输出的n为1,我不理解这个
 

你对这个回答的评价是


这个主要是语言之间的小

你对这个回答的评价是?

丅载百度知道APP抢鲜体验

使用百度知道APP,立即抢鲜体验你的手机镜头里或许有别人想知道的答案。

}

我要回帖

更多关于 java int范围 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信