Java细节02——x = x + 1与x += 1的区别

我们先来看两行代码:

	short x = 1;
	x = x + 1;

这个肯定会报错,我在上一讲已经讲过,这里就不多说了。
我们再来看下面两行代码:

	short x = 1;
	x += 1;

很多人会觉得这两个表达式是一样的,我之前也是这样认为的,但是它们真的不太一样。
最大的区别就是下面的表达式是不会报错的。如果你看过Java编程规范,你就会知道x += 1等价于x = (short) (x + 1)。也就是说,+= 运算符隐含了类型转换。
就算x是int型,这两个表达式的效率也不同,这个问题我将在下一讲讨论。

发布了5 篇原创文章 · 获赞 16 · 访问量 279

猜你喜欢

转载自blog.csdn.net/weixin_44507277/article/details/104200612
x1