Descripción general del sistema de recopilación de la clase de colección java (1)

1. Panorama general

El sistema de recopilación de Java se divide en dos partes: Collectiony Map.
-Las sub-interfaces comunes bajo la interfaz de Colección son List, Setinterfaz.
Hay en -List interfaces ArrayList, LinkedList, Vector otra clase de implementación;
allí HashSet, LinkedHashSet, TreeSet otra clase que implementa la interfaz bajo -Set;
- y Map接口allí abajo HashMap, TreeMap, Hashtable otra clase de implementación.

Para obtener más información, consulte la documentación de ayuda de JavaSE.

2. Interfaz de recopilación

1 lista

Características: Los elementos están ordenados y son repetibles
- ArrayList: La estructura subyacente es una matriz, que es rápida en la consulta y lenta en la adición y eliminación. Al mismo tiempo, los hilos no son seguros, sino eficientes.
- LinkedList: La estructura subyacente es una lista vinculada, que es lenta de consultar y rápida de agregar y eliminar. Los hilos no son seguros y eficientes.
- Vector: La estructura subyacente también es una matriz, por lo que la consulta es rápida y la adición y eliminación son lentas. Pero es seguro para subprocesos e ineficiente.

2.Conjunto

- HashSet: la estructura subyacente es una tabla hash, y el único elemento de desorden.
- LinkedHashSet: la estructura subyacente es una lista enlazada y tablas hash, elementos ordenados y únicos.
- TreeSet: La estructura subyacente es un árbol rojo-negro con elementos ordenados y únicos.

Tres interfaz de mapa

Características: 键值对Los elementos se almacenan en forma de, la clave no se puede repetir, pero el valor puede ser . Elementos simultáneos 无序.
Recorrido de la colección de mapas:
1. values()Recorre todos los valores a través del método map .
2. Almacene las claves de la colección Map keySet()en la colección Set mediante el método map. , Y luego recorra la colección Set para get()obtener el valor mediante el método.
3. entrySet()Obtenga la colección Set que contiene la relación de mapeo Map a través del método, y luego 迭代llámelo getKey()y el getValue()método para obtener la clave y el valor correspondientes.
Código de prueba:

package package04_collection;

import java.util.HashMap;
import java.util.Map;

public class mapTest {
    
    
    public static void main(String[] args) {
    
    
        Map<String,String>map = new HashMap<String, String>();
        map.put("per01","赵");
        map.put("per02","钱");
        map.put("per03","孙");
        map.put("per04","李");
        //1.values方法遍历
        for (String value : map.values()) {
    
    
            System.out.println("value:"+value);
        }
        //2.keySet方法遍历
        for (String s : map.keySet()) {
    
    
            System.out.println("key:"+s+"\tvalue:"+map.get(s));
        }
        //3.entrySet方法遍历
        for (Map.Entry<String, String> entry : map.entrySet()) {
    
    
            System.out.println("key:"+entry.getKey()+"\tvalue:"+entry.getValue());
        }
    }
}

Captura de pantalla del efecto: la
Inserte la descripción de la imagen aquí
注意clase de implementación TreeMap está ordenada y no permite que las claves sean nulas; Hashtable es seguro para subprocesos y, al mismo tiempo, de baja eficiencia, no permite valores nulos; HashMap no es seguro para subprocesos, y ambas claves y los valores permiten valores nulos.

Supongo que te gusta

Origin blog.csdn.net/m0_46550452/article/details/107236030
Recomendado
Clasificación