Java BitSet previousClearBit() 方法



描述

Java BitSet previousClearBit(int fromIndex) 方法返回在指定起始索引或之前出现的第一个设置为 false 的位的索引。

声明

以下是 java.util.BitSet.previousClearBit() 方法的声明

public int previousClearBit(int fromIndex)

参数

fromIndex − 开始检查的索引(包含)。

返回值

此方法返回前一个清除位的索引。

异常

IndexOutOfBoundsException − 如果指定的索引为负。

获取 BitSet 的前一个清除位示例

以下示例演示了 Java BitSet previousClearBit() 方法的用法。我们创建了两个 BitSet。我们使用 set() 方法调用在 BitSet 对象中设置 true 值,并使用 previousClearBit() 方法打印 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);

      // print the previous clear bit
      System.out.println(bitset1.previousClearBit(5));
      System.out.println(bitset2.previousClearBit(10));
   }
}

输出

让我们编译并运行上述程序,这将产生以下结果:

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

获取字节 BitSet 的前一个清除位示例

以下示例演示了 Java BitSet previousClearBit() 方法的用法。我们使用 byte[] 创建了两个 BitSet,并使用 previousClearBit() 方法打印 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);

      // print the previous clear bit
      System.out.println(bitset1.previousClearBit(42));
      System.out.println(bitset2.previousClearBit(35));
   }
}

输出

让我们编译并运行上述程序,这将产生以下结果:

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

获取长整数 BitSet 的前一个设置位示例

以下示例演示了 Java BitSet previousClearBit() 方法的用法。我们使用 long[] 创建了两个 BitSet,并使用 previousClearBit() 方法打印 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);

      // print the previous clear bit
      System.out.println(bitset1.previousClearBit(332));
      System.out.println(bitset2.previousClearBit(259));
   }
}

输出

让我们编译并运行上述程序,这将产生以下结果:

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