El método headSet() de la interfaz NavigableSet en Java se usa para devolver una vista de la parte de este conjunto cuyos elementos van desde fromElement hasta toElement .
- Si fromElement y toElement son iguales, el conjunto devuelto está vacío a menos que fromInclusive y toInclusive sean verdaderos.
- El conjunto devuelto está respaldado por este conjunto, por lo que los cambios en el conjunto devuelto se reflejan en este conjunto y viceversa.
- El conjunto devuelto admite todas las operaciones de conjunto opcionales que admite este conjunto.
Nota : el conjunto devuelto arrojará una IllegalArgumentException en un intento de insertar un elemento fuera de su rango.
Sintaxis :
NavigableSet<E> subSet( E fromElement, boolean fromInclusive, E toElement, boolean toInclusive);
Donde, E es el tipo de elementos que mantiene este contenedor Set.
Parámetros : Esta función acepta 4 parámetros como se explica a continuación:
- fromElement : este es un parámetro obligatorio y especifica el punto final inferior del conjunto devuelto.
- fromInclusive : este es un parámetro opcional y es de tipo booleano. Si se establece en True, el punto final inferior se incluirá en la vista devuelta; de lo contrario, no.
- toElement : este es un parámetro obligatorio y especifica el punto final superior del conjunto devuelto.
- toInclusive : este es un parámetro opcional y es de tipo booleano. Si se establece en True, el punto final inferior se incluirá en la vista devuelta; de lo contrario, no.
Valor devuelto: Devuelve una vista de la parte de este conjunto cuyos elementos van desde fromElement hasta toElement.
Los siguientes programas ilustran el método subSet() en Java:
Programa 1 : NavigableSet con elementos enteros.
// A Java program to demonstrate // subSet() method of NavigableSet import java.util.NavigableSet; import java.util.TreeSet; public class GFG { public static void main(String[] args) { NavigableSet<Integer> ns = new TreeSet<>(); ns.add(0); ns.add(1); ns.add(2); ns.add(3); ns.add(4); ns.add(5); ns.add(6); System.out.println("Map with key-value between the given argument : " + ns.subSet(1, 6)); System.out.println("Map with key-value between the given argument : " + ns.subSet(2, 6)); } }
Map with key-value between the given argument : [1, 2, 3, 4, 5] Map with key-value between the given argument : [2, 3, 4, 5]
Programa 2: NavigableSet con elementos de string.
// A Java program to demonstrate // subSet() method of NavigableSet import java.util.NavigableSet; import java.util.TreeSet; public class GFG { public static void main(String[] args) { NavigableSet<String> ns = new TreeSet<>(); ns.add("A"); ns.add("B"); ns.add("C"); ns.add("D"); ns.add("E"); ns.add("F"); ns.add("G"); System.out.println("Map with key-value between the given range : " + ns.subSet("B", "G")); } }
Map with key-value between the given range : [B, C, D, E, F]
Referencia : https://docs.oracle.com/javase/10/docs/api/java/util/NavigableSet.html#subSet(E, E)