Heim >类库下载 >java类库 >Verwendung von BitSet im Java.util-Paket

Verwendung von BitSet im Java.util-Paket

阿神
阿神Original
2016-11-07 17:37:482211Durchsuche

BitSet: Es handelt sich um eine Bytemenge, die zur Darstellung von Ganzzahlen und zur Durchführung von Operationen wie Schnittmenge und Vereinigung zweier Mengen verwendet werden kann.

Wir wissen, dass die kleinste Einheit des Computerspeichers Bit ist und die kleinste Einheit in unserem Java-Programm Byte ist. Die Konvertierungsbeziehung zwischen ihnen beträgt 1 Byte = 8 Bit. BitSet stellt die Größe der ganzzahligen Daten basierend auf der Position der Bits dar. Beispiel: 16 befindet sich an der 16. Position, 5 befindet sich an der 5. Position, sodass das folgende BitSet durch Analyse des Quellcodes die Menge {5,16} darstellen kann Von BitSet wissen wir, dass BitSet zwei Konstruktoren bereitstellt, einer ist BitSet() ohne Parameter und der andere ist BitSet(int nbits); wenn wir den Konstruktor ohne Parameter zum Erstellen eines BitSet-Objekts verwenden, beträgt die Standardlänge 64 Bit Erstellt. Objekt, die Datengröße, die dieses Objekt darstellen kann, beträgt 1~64, aber es spielt keine Rolle, selbst wenn wir Daten größer als 64 eingeben, da BitSet von selbst wächst und der Maximalwert Integer.MAX_VALUE=2147483647 sein kann .

Wenn man die Darstellungsmethode kennt, ist es nicht schwer, ihre Funktion zu verstehen. Wenn beispielsweise die Vereinigung der obigen Menge und {2,23,48} gefunden wird, wird sie zu einer bitcodierten ODER-Operation. Verwendung von BitSet im Java.util-Paket

00000000 00000000 00000000 00000000 00000000 10000000 00100000 Sammlung {5,16}

00000000 00000000 000 00000000 00000000 01000000 00000000 00000010 Stellen Sie {2,23,48}

oder den Vorgang ein Das Endergebnis ist

00000000 10000000 00000000 00000000 01000000 10000000 00100010, also ist das Ergebnis {2,5,16,23,48}

Keine anderen größeren Zahlen. Es dauert nur eine Bitcode-Aktualisierung.

Hinweis:

Wenn Sie einen BitSet-Satz mit der maximalen Anzahl von Ziffern erstellen, BitSet bitSet = new BitSet(Integer.MAX_VALUE);

meldet den folgenden Fehler

Ausnahme im Thread „main“ java.lang.OutOfMemoryError: Java heap space

bei java.util.BitSet.initWords(BitSet.java:144)

bei java.util.BitSet.

(BitSet.java:139)

bei Test.main(Test.java:10)

Dies zeigt, dass der Java-Heap-Heap Der Speicher reicht nicht aus. Sie können es wie folgt ändern:

Sie können es auch so ändern, wenn Sie java.lang.OutOfMemoryError: Java-Heap-Space-Fehler

melden

Verwendung von BitSet im Java.util-Paket

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn