BitSet es una clase definida en el paquete java.util. Crea una array de bits representados por valores booleanos.
Requisito previo: Java BitSet | Serie 1
Método nextClearBit():
este método en la clase BitSet se usa para devolver el índice del primer bit que se establece en falso que ocurre en o después del índice de inicio especificado.
Sintaxis:
public int nextClearBit(int fromIndex)
Parámetros: este método toma un parámetro obligatorio deIndex , que es el índice desde el que comenzar a verificar (inclusive) el siguiente bit falso.
Valor devuelto: este método devuelve el índice del siguiente bit borrado, es decir, el índice del primer bit que se establece en falso que ocurre en o después del índice de inicio especificado.
Excepciones: este método genera una excepción IndexOutOfBoundsException si el índice especificado es negativo.
Ejemplo 1: para mostrar la implementación de la función nextClearBit():
// Java program illustrating Bitset // nextClearBit() function. import java.util.*; public class GFG { public static void main(String[] args) { // Constructors of BitSet class BitSet bs1 = new BitSet(); BitSet bs2 = new BitSet(); /* assigning values to set1*/ bs1.set(0); bs1.set(1); bs1.set(2); bs1.set(4); // assign values to bs2 bs2.set(4); bs2.set(6); bs2.set(5); bs2.set(1); bs2.set(2); bs2.set(3); bs2.set(12); // Printing the 2 Bitsets System.out.println("bs1 : " + bs1); System.out.println("bs2 : " + bs2); // Print the first clear bit of bs1 System.out.println(bs1.nextClearBit(0)); // Print the first clear bit of bs2 after index 3 System.out.println(bs2.nextClearBit(3)); } }
bs1 : {0, 1, 2, 4} bs2 : {1, 2, 3, 4, 5, 6, 12} 3 7
Ejemplo 2: Para mostrar IndexOutOfBoundException:
// Java program illustrating Bitset // nextClearBit() function. import java.util.*; public class GFG { public static void main(String[] args) { // Constructors of BitSet class BitSet bs1 = new BitSet(); BitSet bs2 = new BitSet(); /* assigning values to set1*/ bs1.set(0); bs1.set(1); bs1.set(2); bs1.set(4); // assign values to bs2 bs2.set(4); bs2.set(6); bs2.set(5); bs2.set(1); bs2.set(2); bs2.set(3); bs2.set(12); // Printing the 2 Bitsets System.out.println("bs1 : " + bs1); System.out.println("bs2 : " + bs2); try { // Passing -1 as parameter System.out.println(bs1.nextClearBit(-1)); } catch (Exception e) { System.out.println("Exception when " + "negative index is passed " + "as parameter : " + e); } } }
bs1 : {0, 1, 2, 4} bs2 : {1, 2, 3, 4, 5, 6, 12} Exception when negative index is passed as parameter : java.lang.IndexOutOfBoundsException: fromIndex < 0: -1