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 in Java with Examples | Set 2
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
This article is contributed by Mohit Gupta. If you like GeeksforGeeks and would like to contribute, you can also write an article using contribute.geeksforgeeks.org or mail your article to contribute@geeksforgeeks.org. See your article appearing on the GeeksforGeeks main page and help other Geeks.
Please write comments if you find anything incorrect, or you want to share more information about the topic discussed above.
Please Login to comment...