Java BitSet andNot() Method



Description

The Java BitSet andNot(BitSet set) method clears all of the bits in this BitSet whose corresponding bit is set in the specified BitSet.

Declaration

Following is the declaration for java.util.BitSet.andNot() method

public void andNot(BitSet set)

Parameters

set − the BitSet with which to mask this BitSet.

Return Value

This method does not return a value.

Exception

NA

Performing And Not Operation on BitSets Example

The following example shows the usage of Java BitSet andNot() method. We're creating two BitSets. We're setting true values at given indexes in BitSet objects using set() method calls per index and using andNot() method we're performing andNot opearation and print the updated bitset.

package com.tutorialspoint;

import java.util.BitSet;

public class BitSetDemo {
   public static void main(String[] args) {

      // create 2 bitsets
      BitSet bitset1 = new BitSet();
      BitSet bitset2 = new BitSet();

      // assign values to bitset1
      bitset1.set(0, 6, true);

      // assign values to bitset2
      bitset2.set(2);
      bitset2.set(4);
      bitset2.set(6);
      bitset2.set(8);
      bitset2.set(10);

      // print the sets
      System.out.println("Bitset1:" + bitset1);
      System.out.println("Bitset2:" + bitset2);

      // perform andNot operation between two bitsets
      bitset1.andNot(bitset2);

      // print the new bitset1
      System.out.println(bitset1);
   }
}

Output

Let us compile and run the above program, this will produce the following result −

Bitset1:{0, 1, 2, 3, 4, 5}
Bitset2:{2, 4, 6, 8, 10}
{0, 1, 3, 5}

Performing And Not Operation on BitSets of Bytes Example

The following example shows the usage of Java BitSet andNot() method. We're creating two BitSets using byte[] and using andNot() method we're performing andNot opearation and print the updated bitset.

package com.tutorialspoint;

import java.util.BitSet;

public class BitSetDemo {
   public static void main(String[] args) {

      // create 2 bitsets
      BitSet bitset1 = BitSet.valueOf(new byte[] { 0, 1, 2, 3, 4, 5 });
      BitSet bitset2 = BitSet.valueOf(new byte[] { 2, 4, 6, 8, 10 });

      // print the sets
      System.out.println("Bitset1:" + bitset1);
      System.out.println("Bitset2:" + bitset2);

      // perform andNot operation between two bitsets
      bitset1.andNot(bitset2);

      // print the new bitset1
      System.out.println(bitset1);
   }
}

Output

Let us compile and run the above program, this will produce the following result −

Bitset1:{8, 17, 24, 25, 34, 40, 42}
Bitset2:{1, 10, 17, 18, 27, 33, 35}
{8, 24, 25, 34, 40, 42}

Performing And Not Operation on BitSets of Longs Example

The following example shows the usage of Java BitSet andNot() method. We're creating two BitSets using long[] and using andNot() method we're performing andNot opearation and print the updated bitset.

package com.tutorialspoint;

import java.util.BitSet;

public class BitSetDemo {
   public static void main(String[] args) {

      // create 2 bitsets
      BitSet bitset1 = BitSet.valueOf(new long[] { 0, 1, 2, 3, 4, 5 });
      BitSet bitset2 = BitSet.valueOf(new long[] { 2, 4, 6, 8, 10 });

      // print the sets
      System.out.println("Bitset1:" + bitset1);
      System.out.println("Bitset2:" + bitset2);

      // perform andNot operation between two bitsets
      bitset1.andNot(bitset2);

      // print the new bitset1
      System.out.println(bitset1);
   }
}

Output

Let us compile and run the above program, this will produce the following result −

Bitset1:{64, 129, 192, 193, 258, 320, 322}
Bitset2:{1, 66, 129, 130, 195, 257, 259}
{64, 192, 193, 258, 320, 322}
java_util_bitset.htm
Advertisements