Java中的*=意味着什么?

jig*_*uff -4 java string int operator-keyword

我正在阅读一个教程,我找到了这个操作符,但我不确定它是做什么的.

int number = Integer.parseInt(tfInput.getText());

数字*=数字;

tfResult.setText(number +"");

谢谢.

nhg*_*rif 6

a *= b; 相当于 a = a * b;

您可能(可能?)熟悉+=操作员.所有基本数学函数都有类似的运算符.

  • +=:a += b;相当于a = a + b;
  • -=:a -= b;相当于a = a - b;
  • *=:a *= b;相当于a = a * b;
  • /=:a /= b;相当于a = a / b;
  • %=:a %= b;相当于a = a % b;

请注意@ ruakh的评论:

请注意,a*= b仅计算一次,而a = a*b计算两次.(如果a只是变量或字段名称,那就没有区别,但是如果它是一个更复杂的表达式,例如f().x或fgx,那可能很重要.)

  • +1,但请注意,`a*= b`仅评估一次'a`,而'a = a*b`评估它两次.(如果`a`只是一个变量或字段名称,那就没有区别,但是如果它是一个更复杂的表达式,例如`f().x`或`fgx`,这可能很重要.) (2认同)