Latest web development tutorials

Klasa Java Bitset

Klasa Bitset tworzy specjalny rodzaj tablicy do przechowywania wartości bitów. BitSet do rozmiaru tablicy musi wzrosnąć. Wektor ten bit (wektor bitów) porównanie podobnego z podobnym.

Jest to tradycyjny klasy, ale został całkowicie przeprojektowany w Java 2.

BitSet definiuje dwa konstruktory.

Pierwszy Konstruktor tworzy domyślnego obiektu:

BitSet()

Druga metoda pozwala użytkownikowi określić rozmiar początkowy. Wszystkie bity są inicjowane 0.


BitSet(int size)

Metoda BitSet realizowane Cloneable interfejs zdefiniowany w tabeli poniżej w następujący sposób:

Nie. metoda Opis
1 nieważne i (BitSet bitSet)
Bit ten cel wyznaczony z argumentem ustawionym bitem i wykonywania operacji logicznych.
2 void oraznie (BitSet bitSet)
Usunąć wszystkie bity w tym BitSet którego odpowiedni bit jest ustawiony w określonej BitSet.
3 int liczność ()
Zwraca liczbę bitów w tym BitSet ustawiony na true.
4 void clear ()
Wszystkie bity w tej BitSet false.
5 unieważnić wyraźny (int index)
Bit określone przez indeks false.
6 void clear (int startIndex int endIndex)
Podany fromIndex (włącznie) do określonego toIndex (brak w zestawie) bit jest ustawiony w przedziale fałszywe.
7 klon Object ()
Skopiuj ten BitSet wygenerować nowy BitSet który jest równy.
8 boolean equals (Object bitSet)
Ten obiekt na określony obiekt do porównania.
9 nieważne z klapką (int index)
Bit pod określonym indeksem do jego bieżącej wartości dopełniacza.
10 nieważne z klapką (int startIndex int endIndex)
Podany fromIndex (włącznie) do określonego toIndex (nie dołączone) dla każdego bitu w zakresie jej aktualnej wartości dopełniacza.
11 logiczna get (int index)
Zwraca wartość bitowego o podanym indeksie.
12 BitSet get (int startIndex int endIndex)
Zwraca nowy BitSet ta składa się z fromIndex BitSet (włącznie) do toIndex (brak w zestawie) Pozycja w przedziale.
13 int hashCode ()
Zwraca kod skrótu dla tego ustawionym bitem.
14 logiczne przecina (BitSet bitSet)
Jeśli określony BitSet ma żadnych bitów ma wartość true, aw tym BitSet zostanie również ustawiona na wartość true, a następnie powrót w kotle.
15 logiczna isEmpty ()
Jeśli ta BitSet nie zawiera bity ustawione na true, a następnie powrót w kotle.
16 int length ()
Zwroty tym BitSet "logicznej": wielkość indeksu BitSet najwyższej ustawiony bit plus jeden.
17 int nextClearBit (int startIndex)
Zwraca pierwszy indeks jest ustawiona na false bitu, który odbywa się w dniu lub po indeksie wyjściowego określonego indeksu.
18 int nextSetBit (int startIndex)
Zwraca pierwszy bit jest ustawiony na true indeksu, który odbywa się w dniu lub po indeksie wyjściowego określonego indeksu.
19 nieważne lub (BitSet bitSet)
Ten bit ustawiony z bitów ustawionych parametrów lub do wykonywania operacji logicznych.
20 void set (int index)
Bit pod określonym indeksem jest ustawiony na true.
21 void set (int index, boolean v)
Bit pod określonym indeksem do określonej wartości.
22 void set (int startIndex int endIndex)
Określony fromIndex (włącznie) do określonego toIndex (nie włączone) bit jest ustawiony w zakresie prawdziwe.
23 void set (int startIndex int endIndex, boolean v)
Podany fromIndex (włącznie) do określonego toIndex (brak w zestawie) bit jest ustawiony w przedziale od podanej wartości.
24 int size ()
Zwraca BitSet reprezentuje rzeczywiste wykorzystanie przestrzeni, gdy wartości bitowe bitów.
25 String toString ()
Zwraca ciąg znaków reprezentujący ustawionym bitem.
26 void xor (BitSet bitSet)
Ten bit ustawiony z nieco ustawionych parametrów do wykonywania operacji logicznych XOR.

Przykłady

Następujący program ilustruje to struktura danych na kilka sposobów:

import java.util.BitSet;

public class BitSetDemo {

  public static void main(String args[]) {
     BitSet bits1 = new BitSet(16);
     BitSet bits2 = new BitSet(16);
      
     // set some bits
     for(int i=0; i<16; i++) {
        if((i%2) == 0) bits1.set(i);
        if((i%5) != 0) bits2.set(i);
     }
     System.out.println("Initial pattern in bits1: ");
     System.out.println(bits1);
     System.out.println("\nInitial pattern in bits2: ");
     System.out.println(bits2);

     // AND bits
     bits2.and(bits1);
     System.out.println("\nbits2 AND bits1: ");
     System.out.println(bits2);

     // OR bits
     bits2.or(bits1);
     System.out.println("\nbits2 OR bits1: ");
     System.out.println(bits2);

     // XOR bits
     bits2.xor(bits1);
     System.out.println("\nbits2 XOR bits1: ");
     System.out.println(bits2);
  }
}

Powyższe przykłady zebrane wyniki przedstawiają się następująco:

Initial pattern in bits1:
{0, 2, 4, 6, 8, 10, 12, 14}

Initial pattern in bits2:
{1, 2, 3, 4, 6, 7, 8, 9, 11, 12, 13, 14}

bits2 AND bits1:
{2, 4, 6, 8, 12, 14}

bits2 OR bits1:
{0, 2, 4, 6, 8, 10, 12, 14}

bits2 XOR bits1:
{}