## org.apache.lucene.util
Class BitVector

    java.lang.Object
      org.apache.lucene.util.BitVector

    public final class BitVector

extends Object

Optimized implementation of a vector of bits. This is more-or-less like java.util.BitSet, but also includes the following:

- a count() method, which efficiently computes the number of one bits;
- optimized read from and write to disk;
- inlinable get() method;
- store and load, as bit set or d-gaps, depending on sparseness;

Version:
  $Id: BitVector.java 564236 2007-08-09 15:21:19Z gsingers $

Constructor Summary
`BitVector(Directory d, String name)` Constructs a bit vector from the file `name` in Directory `d`, as written by the `write(org.apache.lucene.store.Directory, java.lang.String)` method.
`BitVector(int n)` Constructs a vector capable of holding `n` bits.

Method Summary
`void` `clear(int bit)` Sets the value of `bit` to zero.
`int` `count()` Returns the total number of one bits in this vector.
`boolean` `get(int bit)` Returns `true` if `bit` is one and `false` if it is zero.
`void` `set(int bit)` Sets the value of `bit` to one.
`int` `size()` Returns the number of bits in this vector.
`void` `write(Directory d, String name)` Writes this vector to the file `name` in Directory `d`, in a format that can be read by the constructor `BitVector(Directory, String)`.

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Constructor Detail

### BitVector

    public BitVector(int n)

  Constructs a vector capable of holding `n` bits.

### BitVector

    public BitVector(Directory d,
                     String name)
              throws IOException

  Constructs a bit vector from the file `name` in Directory `d`, as written by the `write(org.apache.lucene.store.Directory, java.lang.String)` method.

  Throws:
    `IOException`

Method Detail

### set

    public final void set(int bit)

  Sets the value of `bit` to one.

### clear

    public final void clear(int bit)

  Sets the value of `bit` to zero.

### get

    public final boolean get(int bit)

  Returns `true` if `bit` is one and `false` if it is zero.

### size

    public final int size()

  Returns the number of bits in this vector. This is also one greater than the number of the largest valid bit number.

### count

    public final int count()

  Returns the total number of one bits in this vector. This is efficiently computed and cached, so that, if the vector is not changed, no recomputation is done for repeated calls.

### write

    public final void write(Directory d,
                            String name)
                     throws IOException

  Writes this vector to the file `name` in Directory `d`, in a format that can be read by the constructor `BitVector(Directory, String)`.

  Throws:
    `IOException`

Copyright © 2000-2008 Apache Software Foundation. All Rights Reserved.