BitSet クラス
- [内容]
- 必要に応じて大きくなるビットベクトルを扱うクラスです.ビットセットの各要素は,boolean 値を持ち,負でない整数のインデックスが付けられています.インデックスが付けられた各ビットに対して,試験,設定,クリアが可能であり,また,論理積,論理和,および,排他的論理和の演算が可能です.デフォルトでは,すべてのビットの初期値は false です.
- ビットセットの現在のサイズ( size )は,そのビットセットによって現在使用されているスペースの合計ビット数です.このサイズはビットセットの実装と関連するので,サイズは実装によって変わる場合があります.ビットセットの長さ( length )はビットの数であり,実装とは関係なく定義されます.
- [コンストラクタ]
- public BitSet()
- BitSet オブジェクトの生成
- public BitSet(int nbits)
- 0 ~ nbits-1 の範囲のインデックスを持つビットを明示的に表すために十分な初期サイズを持つビットセットを作成
- [主なメソッド]
- public void and(BitSet set)
- 論理積
- public void andNot(BitSet set)
- set に指定されている BitSet のビットをすべてクリア
- public int cardinality()
- true に設定されたビットの数
- public void clear()
- public void clear(int bitIndex)
- public void clear(int fromIndex, int toIndex)
- すべて,または,指定された範囲のビットを false にする( toIndex を含まない.以下,同様)
- public Object clone()
- BitSet の複製
- public boolean equals(Object obj)
- オブジェクトの比較
- public void flip(int bitIndex)
- public void flip(int fromIndex, int toIndex)
- 指定された,または,範囲のビットを補数に変更
- public boolean get(int bitIndex)
- 指定されたビットの値
- public BitSet get(int fromIndex, int toIndex)
- 指定された範囲からなる BitSet
- public boolean intersects(BitSet set)
- set において true に設定されたビットが,BitSet でも true に設定されている場合,true を返す
- public boolean isEmpty()
- true に設定されたビットが含まれていない場合は,true を返す
- public int length()
- BitSet 内のビット数
- public int nextClearBit()
- 指定された開始インデックス,または,そのインデックス後に false に設定された最初のビットのインデックスを返す
- public int nextSetBit()
- 指定された開始インデックス,または,そのインデックス後に true に設定された最初のビットのインデックスを返す
- public void or(BitSet set)
- 論理和
- public void set(int bitIndex)
- public void set(int bitIndex, boolean value)
- public void set(int fromIndex, int toIndex)
- public void set(int fromIndex, int toIndex, boolean value)
- 指定された位置または範囲のビットを,指定された値または true に設定する
- public int size()
- ビットセットを表現するために必要なバイト数(ビット数で表現)
- public String toString()
- 文字列表現を返す
- public void xor(BitSet set)
- 排他的論理和
- [使用例]
- プログラム例は,BitSet クラスの各メソッド等の使用例です.
- [参照]
- Vector