|=
演算子の意味がわかりません。
最初、私はchecker|=(1<<val)
意味を考えchecker= checker+checker|(1<<val)
ました。コードをデバッグした結果、 とchecker|=(1<<val)
は異なることがわかりましたchecker= checker+checker|(1<<val)
。
|=
オペレーターはどのように働きますか?
public static boolean isUniqueChars(String str){
int checker = 0;
for(int i=0; i<str.length();++i){
int val = str.charAt(i)-'a';
if((checker &(1<<val))>0) return false;
checker |=(1<<val); // what does it mean ?
// checker= checker +checker|(1<<val);
}
return true;
}