Java boolean operator &=, |= and ^=
a &= b also means a = a & b
true & true ==> true
true & false ==> false
false & true ==> false
false & false ==> false
true | true ==> true
true | false ==> true
false | true ==> true
false | false ==> false
^= 相同为假,不同为真
true ^ true ==> false
true ^ false ==> true
false ^ true ==> true
false ^ false ==> false
public class UniqueChar { public static boolean isUniqueChars(String str) { int checker = 0; //bit storage for (int i = 0; i < str.length(); ++i) { int val = str.charAt(i) - 'a'; // if bit at index val is 1, then it already exists if ((checker & (1 << val)) > 0) { return false; } //Set bit of index val to 1 checker |= (1 << val); } return true; } }
【推荐】还在用 ECharts 开发大屏?试试这款永久免费的开源 BI 工具!
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步