web-dev-qa-db-ja.com

Javaで%=はどういう意味ですか?

%=はJavaでどのように機能しますか?値の再割り当てに使用できると聞いたことがありますか?

誰かが教えることができれば感謝しています!ありがとう!

minutes=0;
while(true){
minutes++;
minutes%=60;
}
7
Daniel

これは以下の略です:

minutes = minutes % 60;

Javaのすべての2項演算子には、他にも同様の 複合代入演算子 があります:+=-=*=^=||=など.

17
pobrelkey

+ =追加先:

i+=2;

i = i + 2;です

%は残りです:126 % 10は6です。

このロジックを拡張すると、%=が余りに設定されます。

minutes%=60;

分をminutes % 60に設定します。これは、minutesを60で除算したときの余りです。これは、59を超えて分がオーバーフローしないようにするためです。

2
ζ--

これは Modulo演算 であり、除算から余りをとることと同じです。 _minutes%=60;_はminutes = minutes - (((int) (minutes/60)) * 60);と同じ_minutes = minutes % 60;_と同じです

1
Elliott Frisch