比方说,我有一些用户输入(作为字符串),例如“11010011011”。
现在我想检查是否设置了特定位置的某个位(每个数字都应充当标志)。
注意:我正在接收用户的字符串形式的输入。
我该怎么做?
最佳答案
您可以按原样处理字符串 - 假设您要检查左侧的第一位:
if (input.charAt(0) == '1') { //
或者,如果您想使用 BitSet你可以在循环中初始化它:
String input = "11010011011";
BitSet bs = new BitSet(input.length());
int i = 0;
for (char c : input.toCharArray()) {
if (c == '1') bs.set(i);
i++;
}
然后检查第 i 个位是否已设置:
boolean isSet = bs.get(i);
关于java - Java 中的位运算 : Test if in "1010101111011" a bit is set?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13179804/