有人可以請解釋這段代碼的工作,它告訴如果給定的單詞是唯一的或不是?請解釋說明給定單詞是否唯一的代碼片段?
public static boolean isUniqueChars(String str) {
if (str.length() > 128) {
return false;
}
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);
}
return true;
}
我不明白什麼是以下兩行發生的事情:
if ((checker & (1 << val)) > 0) return false;
checker |= (1 << val);
謝謝!
這是一個位掩碼。 – SLaks