Javadocに基づいて、次のコードが出力されます6
。ただし、3
明らかな理由もなく出力されます。
import java.util.*;
public class BitSetStrangeness{
public static void main(String[] args){
BitSet foo = new BitSet();
int[] arbitrary = new int[] {
0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,1,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,1,0,1,0,0,0,0,1,1,0,1,1,1,0,1,1,1,1,1,1,1,1,1,1,1,1,1
};
for (int i = 0; i < arbitrary.length; i++)
if (arbitrary[i] == 1) foo.set(i);
else foo.clear(i);
System.out.println(foo.get(15,21).length());
}
}
a)なぜこの動作が見られるのか、b)抽出されたビットセットの長さが3ではなく6になるようにコードを変更して修正する方法を説明できますか?