Class BitArray


  • public class BitArray
    extends java.lang.Object
    A packed array of booleans.
    • Constructor Summary

      Constructors 
      Constructor Description
      BitArray​(boolean[] bits)
      Create a BitArray whose bits are those of the given array of Booleans.
      BitArray​(int length)
      Creates a BitArray of the specified size, initialized to zeros.
      BitArray​(int length, byte[] a)
      Creates a BitArray of the specified size, initialized from the specified byte array.
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      java.lang.Object clone()  
      boolean equals​(java.lang.Object obj)  
      boolean get​(int index)
      Returns the indexed bit in this BitArray.
      int hashCode()
      Returns a hash code value for this bit array.
      int length()
      Returns the length of this BitArray.
      void set​(int index, boolean value)
      Sets the indexed bit in this BitArray.
      boolean[] toBooleanArray()
      Return a boolean array with the same bit values a this BitArray.
      byte[] toByteArray()
      Returns a Byte array containing the contents of this BitArray.
      java.lang.String toString()  
      • Methods inherited from class java.lang.Object

        finalize, getClass, notify, notifyAll, wait, wait, wait
    • Constructor Detail

      • BitArray

        public BitArray​(int length)
                 throws java.lang.IllegalArgumentException
        Creates a BitArray of the specified size, initialized to zeros.
        Parameters:
        length - the length
        Throws:
        java.lang.IllegalArgumentException - in case of error
      • BitArray

        public BitArray​(int length,
                        byte[] a)
                 throws java.lang.IllegalArgumentException
        Creates a BitArray of the specified size, initialized from the specified byte array. The most significant bit of a[0] gets index zero in the BitArray. The array a must be large enough to specify a value for every bit in the BitArray. In other words, 8*a.length <= length.
        Parameters:
        length - the length
        a - the array
        Throws:
        java.lang.IllegalArgumentException - in case of error
      • BitArray

        public BitArray​(boolean[] bits)
        Create a BitArray whose bits are those of the given array of Booleans.
        Parameters:
        bits - the bits
    • Method Detail

      • get

        public boolean get​(int index)
                    throws java.lang.ArrayIndexOutOfBoundsException
        Returns the indexed bit in this BitArray.
        Parameters:
        index - the index
        Returns:
        the value
        Throws:
        java.lang.ArrayIndexOutOfBoundsException - in case of error
      • set

        public void set​(int index,
                        boolean value)
                 throws java.lang.ArrayIndexOutOfBoundsException
        Sets the indexed bit in this BitArray.
        Parameters:
        index - the index
        value - the value to set
        Throws:
        java.lang.ArrayIndexOutOfBoundsException - in case of error
      • length

        public int length()
        Returns the length of this BitArray.
        Returns:
        the length
      • toByteArray

        public byte[] toByteArray()
        Returns a Byte array containing the contents of this BitArray. The bit stored at index zero in this BitArray will be copied into the most significant bit of the zeroth element of the returned byte array. The last byte of the returned byte array will be contain zeros in any bits that do not have corresponding bits in the BitArray. (This matters only if the BitArray's size is not a multiple of 8.)
        Returns:
        the array
      • equals

        public boolean equals​(java.lang.Object obj)
        Overrides:
        equals in class java.lang.Object
        See Also:
        Object.equals(java.lang.Object)
      • toBooleanArray

        public boolean[] toBooleanArray()
        Return a boolean array with the same bit values a this BitArray.
        Returns:
        the boolean array
      • hashCode

        public int hashCode()
        Returns a hash code value for this bit array.
        Overrides:
        hashCode in class java.lang.Object
        Returns:
        a hash code value for this bit array.
      • clone

        public java.lang.Object clone()
        Overrides:
        clone in class java.lang.Object
        See Also:
        Object.clone()
      • toString

        public java.lang.String toString()
        Overrides:
        toString in class java.lang.Object
        See Also:
        Object.toString()