¿Cómo obtener la clave o el valor de TreeMap usando el índice en Java?

TreeMap en Java se utiliza para implementar la interfaz Map y NavigableMap junto con la clase AbstractMap . El TreeMap se ordena según el orden natural de sus claves. La clase TreeMap es una implementación de árbol rojo-negro de la interfaz Map y, por lo tanto, no expone ningún método mediante el cual podamos acceder a las claves o valores de TreeMap utilizando sus índices.

 Hay tres formas simples de obtener la clave o el valor de TreeMap usando el índice en Java, que es la siguiente:

  1. Usando una array
  2. Usar una lista
  3. Usando la iteración

Método 1: usar una array

Podemos obtener una clave de TreeMap o un valor de TreeMap usando un índice en Java usando un Array. El proceso se divide en tres pasos:

  1. Utilice el método entrySet() de la clase TreeMap para obtener una vista de conjunto de todas las entradas almacenadas en el objeto TreeMap.
  2. Convierta el conjunto de entradas en una array mediante el método toArray() .
  3. Y obtenga la clave de TreeMap o el valor de TreeMap usando el índice con la ayuda del método getKey() y getValue()

Sintaxis:

Set<Map.Entry<Integer, String>> entrySet = treeMap.entrySet();

Map.Entry<Integer, String>[] entryArray = entrySet.toArray(new Map.Entry[entrySet.size()]);

Ejemplo:

Java

// Java Program to get TreeMap key or TreeMap value
// using index
 
// Importing all classes of
// java.util package
import java.util.*;
 
// Class
public class GFG {
 
    // MAin driver method
    public static void main(String[] args)
    {
 
        // Creating a New TreeMap
        TreeMap<Integer, String> treeMap
            = new TreeMap<Integer, String>();
 
        // Add elements to TreeMap
        // Custom inputs
        treeMap.put(1, "Welcome");
        treeMap.put(2, "geeks");
        treeMap.put(3, "on");
        treeMap.put(4, "geeksforgeeks");
 
        // Get entry set of the TreeMap using entrySet
        // method
        Set<Map.Entry<Integer, String> > entrySet
            = treeMap.entrySet();
 
        // Convert entrySet to Array using toArray method
        Map.Entry<Integer, String>[] entryArray
            = entrySet.toArray(
                new Map.Entry[entrySet.size()]);
 
        // For loop for iteration  and printing
        for (int i = 0; i < 4; i++)
        {
            // Get Key using index and print
            System.out.println("Key at " + i + ":"
                               + entryArray[i].getKey());
 
            // Get value using index and print
            System.out.println("Value at " + i + ":"
                               + entryArray[i].getValue());
        }
         
    }
}

Producción:

1
Welcome
2
geeks
3
on
4
geeksforgeeks

Método 2: usar una lista

Podemos obtener la clave de TreeMap o el valor de TreeMap usando el índice en Java usando una lista en lugar de una array. El proceso se divide en tres pasos:

  1. Usando el método entrySet() de la clase TreeMap para obtener una vista establecida de todas las entradas almacenadas en el objeto TreeMap.
  2. Ahora, convirtiendo el conjunto de entradas en una array usando el método toArray().
  3. Finalmente, obtener la clave de TreeMap o el valor de TreeMap usando el índice con la ayuda de los métodos get(), getKey() y getValue().

Sintaxis: 

Set<Map.Entry<Integer, String>> entrySet = treeMap.entrySet();

List<Map.Entry<Integer, String>> entryList = new ArrayList<Map.Entry<Integer, String>>(entrySet);

Ejemplo:

Java

// Java Program to get TreeMap key or TreeMap value
// using index
 
// Importing all classes of
// java.util package
import java.util.*;
 
// Class
public class GFG {
 
    // Main driver method
    public static void main(String[] args)
    {
 
        // Creating a TreeMap
        TreeMap<Integer, String> treeMap = new TreeMap<>();
 
        // Add elements to TreeMap
        // Custom inputs
        treeMap.put(1, "Welcome");
        treeMap.put(2, "geeks");
        treeMap.put(3, "on");
        treeMap.put(4, "geeksforgeeks");
 
        // Get entry set of the TreeMap
        // using entrySet method
        Set<Map.Entry<Integer, String> > entrySet
            = treeMap.entrySet();
 
        // Converting entrySet to ArrayList
        List<Map.Entry<Integer, String> > entryList
            = new ArrayList<>(entrySet);
 
        // For each loop for iteration
        for (int i = 0; i < 4; i++) {
 
            // Print Key and Values using index
 
            // Get Key using index
            System.out.println("Key at " + i + ":"
                               + entryList.get(i).getKey());
 
            // Get value using index
            System.out.println(
                "Value at " + i + ":"
                + entryList.get(i).getValue());
        }
    }
}
Producción

Key at 0:1
Value at 0:Welcome
Key at 1:2
Value at 1:geeks
Key at 2:3
Value at 2:on
Key at 3:4
Value at 3:geeksforgeeks

 Método 3: Usar la iteración

Podemos obtener la clave de TreeMap o el valor de TreeMap usando el índice en Java usando una iteración. El proceso se divide en dos pasos: 

  1. Usando el método entrySet() de la clase TreeMap para obtener una vista de conjunto de todas las entradas almacenadas en el objeto TreeMap.
  2. Iterando en entrySet para obtener la clave de TreeMap o el valor de TreeMap usando el índice con la ayuda de los métodos getKey() y getValue().

Sintaxis:  

Set<Map.Entry<Integer, String>> entrySet = treeMap.entrySet();

Ejemplo:

Java

// Java Program to get TreeMap key or TreeMap value using
// index
 
// Importing all classes of
// java.util package
import java.util.*;
 
// Class
public class GFG {
 
    // MAin driver method
    public static void main(String[] args)
    {
        // Creating a TreeMp
        TreeMap<Integer, String> treeMap = new TreeMap<>();
 
        // Add elements to TreeMap
        // Custom inputs
        treeMap.put(1, "Welcome");
        treeMap.put(2, "geeks");
        treeMap.put(3, "on");
        treeMap.put(4, "geeksforgeeks");
 
        // Get entry set of the TreeMap
        // using entrySet method
        Set<Map.Entry<Integer, String> > entrySet
            = treeMap.entrySet();
 
        int index = 0;
 
        // For-each loop for iteration
        for (Map.Entry<Integer, String> currentEntry :
             entrySet) {
 
            // Print Key and Values using index
 
            // Get Key using index
            System.out.println("Key at " + index + ":"
                               + currentEntry.getKey());
 
            // Get value using index
            System.out.println("Value at " + index + ":"
                               + currentEntry.getValue());
            index++;
        }
    }
}
Producción

Key at 0:1
Value at 0:Welcome
Key at 1:2
Value at 1:geeks
Key at 2:3
Value at 2:on
Key at 3:4
Value at 3:geeksforgeeks

Publicación traducida automáticamente

Artículo escrito por nikhilchhipa9 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *