gpt4 book ai didi

java - java中的运算符: '+' with '=' vs '+='

转载 作者:行者123 更新时间:2023-12-02 06:18:33 25 4
gpt4 key购买 nike

我经常使用两种形式:java中的短加法和长加法(还有减法、乘法等)运算符。我认为这不会影响性能或速度,但我对以下问题感到困惑:“为什么 java 创建者提供了两种形式的此运算符?它们之间有什么区别?”那么,两种形式之间的真正区别是什么:

int a = 10, b = 3;
b = b + a;

int a = 10, b = 3;
b += a;

有人能给我解释一下吗?两种形式之间的差异可能隐藏在较低级别吗?每本书都只说:“Java 也有复合运算符...”,但没有提及差异。

最佳答案

考虑以下代码:

int x = 9;
short s = 2;
s = s+x; // Compiler error
s += x; // Compiles

所以,基本上当你说:s += x时,它意味着s = (short)(s+x)。当您使用 s = s+x 时,编译器会提示,因为它无法将 xint 转换为 short隐式。因此,+= 运算符负责类型转换。

关于java - java中的运算符: '+' with '=' vs '+=' ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16437406/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com