BitSet class methods in Java with Examples | Set 3
BitSet class methods in Set 3. / / | | | \ \ and notand flip isEmpty equal get intersect
BitSet class methods are explained as follows :
- and / notand : java.util.BitSet.and() and java.util.BitSet.notand() method is a java.util.Bitset class method.
.and() method performs logical AND operation of bit set(target) with the bit set passed as an argument. This will return a bit (set) if and only if both the bits that are being operated are true.
.notand() method – All those bits having it’s corresponding bit – Set are cleared using this methodSyntax: public void and(BitSet bitset) or public void andNot(BitSet bitste) Parameters: bitset - set to perform the operation
- equal : java.util.BitSet.equal() method plays its role in comparing two bitset. It does so by comparing an object with other.
Syntax: public boolean equals(Object o) Parameters: o - the object to compare with Overrides: equals in class Object Return: if object are same then true; otherwise false
- get() : java.util.BitSet.get() method creates a new BitSet with elements from the given Bitset having positions from from_Index (inclusive) to_Index(exclusive).
Syntax: public BitSet get(int from_Index, int to_Index) Parameters: from_Index - index of the first bit of given BitSet to include to_Index - index after the last bit of the BitSet to include Throws: IndexOutOfBoundsException - if from_Index is negative, or to_Index is negative, or from_Index is larger than to_Index
- flip() : java.util.BitSet.flip(from_Index, to_Index) method sets each bit from the given from_Index (inclusive) to the specified to_Index (exclusive) to current value’s compliment.
Syntax: public void flip(int from_Index, int to_Index) Parameters: from_Index - index of the first bit of the given BitSet to flip to_Index - index after the last bit of the given BitSet to flip Throws: IndexOutOfBoundsException - if from_Index is negative, or to_Index is negative, or from_Index is larger than to_Index
- intersect() : java.util.BitSet.intersect() method returns true if both the bits in target BitSet and the given BitSet are set.
Syntax: public boolean intersects(BitSet set) Parameters: set - BitSet to intersect with Returns: true if the given BitSet intersects the target BitSet
- isEmpty() : java.util.BitSet.isEmpty() method whether there is any bit, that is set to true or not in the given Bitset.
Syntax: public boolean isEmpty() Return: boolean indicating whether the given BitSet is empty
Java code explaining the use of and(), notand(), equal(), get() methods.
// Java program explaining BitSet class methods // and(), notand(), equal(), get() import java.util.*; public class GFG { public static void main(String[] args) { BitSet bs1 = new BitSet(); BitSet bs2 = new BitSet(); // assign values to bs1 using set() bs1.set( 7 ); bs1.set( 1 ); bs1.set( 2 ); bs1.set( 4 ); bs1.set( 3 ); bs1.set( 6 ); // assign values to bs2 bs2.set( 4 ); bs2.set( 6 ); bs2.set( 3 ); bs2.set( 9 ); bs2.set( 2 ); // Printing the Bitsets System.out.println( "bs1 : " + bs1); System.out.println( "bs2 : " + bs2); // use of get() to get index 3 to 6 of bs1 System.out.println( "\nUse of get() on bs1 : " + bs1.get( 1 , 4 )); // use of get() to get index 1 to 4 of bs2 System.out.println( "Use of get() on bs2 : " + bs2.get( 1 , 4 )); // perform not operation in b/w the sets bs1.andNot(bs2); System.out.println( "\nNot b/w bs1 and bs2 : " + bs1); // perform and operation between two bitsets bs1.and(bs2); System.out.println( "And b/w bs1 and bs2 : " + bs1); // equal() method to compare the bs1 and bs2 if (bs1.equals(bs2)) System.out.println( "\nUsing equal method : Equal" ); else System.out.println( "\nUsing equal method : Not Equal" ); } } |
Output:
bs1 : {1, 2, 3, 4, 6, 7} bs2 : {2, 3, 4, 6, 9} Use of get() on bs1 : {0, 1, 2} Use of get() on bs2 : {1, 2} Not b/w bs1 and bs2 : {1, 7} And b/w bs1 and bs2 : {} Using equal method : Not Equal
Java code explaining the use of intersect(), isEmpty(), flip() methods.
// Java program explaining BitSet class methods // intersect(), isEmpty(), flip() methods import java.util.*; public class NewClass { public static void main(String[] args) { BitSet bs1 = new BitSet(); BitSet bs2 = new BitSet(); // assign values to bs1 using set() bs1.set( 7 ); bs1.set( 1 ); bs1.set( 2 ); bs1.set( 4 ); bs1.set( 3 ); bs1.set( 6 ); // assign values to bs2 bs2.set( 4 ); bs2.set( 6 ); bs2.set( 3 ); bs2.set( 9 ); bs2.set( 2 ); // Printing the Bitsets System.out.println( "bs1 : " + bs1); System.out.println( "bs2 : " + bs2); System.out.println( "" ); // use of intersect() to check if the bitsets // intersects System.out.println( "Using intersect() : " + bs2.intersects(bs1)); // use of flip() from_index - 1 to_index - 5 bs1.flip( 1 , 5 ); System.out.println( "\nbs1 using flip : " + bs1); // use of flip() from_index - 2 to_index - 4 bs2.flip( 2 , 4 ); System.out.println( "bs2 using flip : " + bs2); System.out.println( "" ); // use of isEmpty() to check if bitsets are empty System.out.println( "Use of isEmpty() : " + bs1.isEmpty()); System.out.println( "Use of isEmpty() : " + bs2.isEmpty()); } } |
Output:
bs1 : {1, 2, 3, 4, 6, 7} bs2 : {2, 3, 4, 6, 9} Using intersect() : true bs1 using flip : {6, 7} bs2 using flip : {4, 6, 9} Use of isEmpty() : false Use of isEmpty() : false
References :
https://docs.oracle.com/javase/7/docs/api/java/util/BitSet.html
Contact Us