Marco de recopilación detallado basado en Java

 
 

Resumen de clases de colección de Java

Diferencia entre colección y matriz

Colección: la interfaz raíz de una clase de colección de una sola columna, que se utiliza para almacenar una serie de elementos que cumplen una determinada regla.

Métodos de uso común en la interfaz Colección

Métodos de uso común en la interfaz de lista

Colección ArrayList

Colección LinkedList

configurar interfaz

Colección HashSet

Colección LinkedHashSet

Colecciones: herramientas de colección

Mapa de colección de dos columnas

Métodos de uso común en la interfaz del mapa

Dos métodos transversales de recopilación de mapas

1. Utilice el método set para encontrar el valor mediante la tecla

En segundo lugar, utilice objetos de entrada para recorrer la colección de mapas

LinkedHashMap


Una colección es un contenedor proporcionado en Java que puede almacenar varios datos.

Diferencia entre colección y matriz

     La longitud de la matriz es fija, la longitud de la colección es variable

     Las matrices almacenan elementos del mismo tipo y pueden almacenar valores de tipos de datos básicos. (Puede ser un objeto, puede ser un tipo de datos básico)

     Las colecciones almacenan objetos y los tipos de objetos pueden ser inconsistentes. (Único objeto)

Colección: la interfaz raíz de una clase de colección de una sola columna, que se utiliza para almacenar una serie de elementos que cumplen una determinada regla.

Tiene dos subinterfaces importantes, java.util.List y java.util.Set.

     La lista se caracteriza por elementos ordenados y elementos repetibles.

     La característica de Set es que los elementos están desordenados y no se pueden repetir.

     Las principales clases de implementación de la interfaz List son java.util.ArrayList y Java.util.LinkedList 

     Las principales clases de implementación de la interfaz Set son java.util.HashSet y java.util.TreeSet 

Métodos de uso común en la interfaz Colección

public static void main(String[]args){
	//创建集合对象,使用多态
	Collection<String>coll=newArrayList<>();
	System.out.println(coll);//空
	//add()方法 
	booleanb1=coll.add("小小张自由!");
	coll.add("小张!");coll.add("小小张!");
	coll.add("小小自由!");coll.add("小小张自由!");

	System.out.println(coll);
	
	//remove()方法
	coll.remove("小小张自由!");//重复值只删除第一个
	System.out.println(coll);
	
	//contains()方法判断集合中是否包含给定对象
	System.out.println(coll.contains("zyb"));
	System.out.println(coll.contains("小小张自由!"));
	
	//isEmpty();判断集合是否为空
	System.out.println(coll.isEmpty());

	//size()方法返回集合中元素的个数
	System.out.println(coll.size());
	
	//toArray()方法把集合中元素存储到数组中
	Object[]objects=coll.toArray();
	for(inti=0;i<objects.length;i++){
	System.out.println(objects[i]);
	}
    //遍历集合
	/*for(inti=0;i<coll.size();i++){
	System.out.println(coll[i]);
	}*/
	//清空
	coll.clear();
	System.out.println(coll);
}

Métodos de uso común en la interfaz de lista

  • public void add (int index, E element): agrega el elemento especificado a la posición especificada en la colección.
  • public E get (int index): Devuelve el elemento en la posición especificada en la colección.
  • public E remove (int index): elimina el elemento en la posición especificada en la lista y devuelve el elemento eliminado.
  • public E set (int index, E element): Reemplaza el elemento en la posición especificada en el conjunto con el elemento especificado y devuelve el elemento antes de la actualización del valor.

Colección ArrayList

La estructura del almacenamiento de datos de la colección      java.util.ArrayList es una estructura de matriz . Los elementos se agregan y eliminan lentamente y la búsqueda es rápida Dado que las funciones más comúnmente utilizadas en el desarrollo diario son la consulta de datos y el recorrido de datos, ArrayList es la colección más utilizada.

Colección LinkedList

La estructura del almacenamiento de datos de la colección java.util.LinkedList es una estructura de lista enlazada. Una colección que facilita la adición y eliminación de elementos.

Métodos específicos de la colección LinkedList

  • public void addFirst (E e): inserta el elemento especificado al principio de esta lista.
  • public void addLast (E e): Agrega el elemento especificado al final de esta lista.
  • public E getFirst (): Devuelve el primer elemento de esta lista.
  • public E getLast (): Devuelve el último elemento de esta lista.
  • public E removeFirst (): Elimina y devuelve el primer elemento de esta lista.
  • public E removeLast (): Elimina y devuelve el último elemento de esta lista.
  • public E pop (): saca un elemento de la pila representada por esta lista.
  • public void push (E e): Inserta el elemento en la pila representada por esta lista.
  • public boolean isEmpty (): si la lista no contiene elementos, devuelve verdadero.
private static void show01(){
	LinkedList<String>LinkedList=newLinkedList<String>();
	LinkedList.add("a");LinkedList.add("b");
	LinkedList.add("c");LinkedList.add("d");
	
	System.out.println("原始数组"+LinkedList);
	System.out.println(LinkedList.removeFirst());//移除第一个与pop()效果一样
	System.out.println(LinkedList.removeLast());
	
	LinkedList.addFirst("Java");//开头与push()效果一样
	LinkedList.addLast("promsing");//结尾与add()效果一样
	System.out.println(LinkedList);
	System.out.println(LinkedList.getFirst());//获取第一个
	System.out.println(LinkedList.getLast());//获取最后一个

}

configurar interfaz

Las interfaces java.util.Set y las interfaces java.util.List , las mismas que se heredaron de la interfaz Colección , que con los métodos de la interfaz Colección son básicamente los mismos, y no en la interfaz Colección para expandir la funcionalidad, pero más que más estricto el Interfaz de colección.
 

Colección HashSet

java.util.HashSet es una clase de implementación de la interfaz Set . Los elementos almacenados no son repetibles y todos los elementos están desordenados (es decir, la secuencia de acceso es inconsistente). La implementación subyacente de java.util.HashSet es en realidad un soporte java.util.HashMap ,
 
public class HashSetDemo { 
    public static void main(String[] args) { 
        //创建 Set集合
        HashSet<String> set = new HashSet<String>(); 
        //添加元素 
        set.add(new String("cba")); 
        set.add("abc"); 
        set.add("bac"); 
        set.add("cba"); 
        //遍历 
        for (String name : set) { 
            System.out.print(name); 
        } 
    } 
}
//输出结果为 cba  abc  bac

Colección LinkedHashSet

HashSet garantiza que los elementos son únicos, pero los elementos se almacenan sin orden, por lo que debemos usar el conjunto LinkedHashSet para asegurar el orden . Es una estructura de almacenamiento de datos que combina una lista vinculada y una tabla hash.
 
public class LinkedHashSetDemo { 
    public static void main(String[] args) { 
        Set<String> set = new LinkedHashSet<String>(); 
        set.add("bbb"); 
        set.add("aaa"); 
        set.add("abc"); 
        set.add("bbc"); 
        Iterator<String> it = set.iterator(); 
        while (it.hasNext()) { 
            System.out.print(it.next()); 
        } 
    } 
}
//输出结果为 bbb   aaa  abc  bbc

Colecciones: herramientas de colección

  • public static <T> boolean addAll (Collection <T> c, T ... elementos): Agrega algunos elementos a la colección.
  • public static void shuffle (Lista <?> lista) Shuffle the order: Shuffle the collection order.
  • public static <T> void sort (List <T> list): Ordena los elementos de la colección de acuerdo con las reglas predeterminadas.
  • public static <T> void sort (List <T> list, Comparator <? super T>): Ordena los elementos de la colección de acuerdo con las reglas especificadas.
public static void main (String[] args){
	ArrayList<String> list = new ArrayList<>();
	Collections.addAll(list,"a","b","c","d","e");//批量添加多个e
	System.out.println(list);
	Collections.shuffle(list);//打乱
	System.out.println(list);
}

Mapa de conjunto de dos columnas

Métodos de uso común en la interfaz del mapa

public static void main(String[] args) { 
    //创建 map对象 
    HashMap<String, String> map = new HashMap<String, String>(); 
    //添加元素到集合 
    map.put("黄晓明", "杨颖"); 
    map.put("文章", "马伊琍"); 
    map.put("邓超", "孙俪"); 
    System.out.println(map); 
    //String remove(String key) 
    System.out.println(map.remove("邓超")); 
    System.out.println(map); 
    // 想要查看 黄晓明的媳妇 是谁 
    System.out.println(map.get("黄晓明")); 
    System.out.println(map.get("邓超")); 
}

Dos métodos transversales de recopilación de mapas

1. Utilice el método set para encontrar el valor mediante la tecla

public static void main(String[] args) {

        Map<String,Integer> map=new HashMap<>();
        map.put("郭靖",175);
        map.put("杨过",180);
        map.put("乔峰",183);
        map.put("无忌",177);
        //1、使用Map集合中的方法keySet()方法,把Map集合中所有的key取出来,存储到set集合中
        Set<String> set=map.keySet();
        //2、遍历set集合,获取Map集合中的每一个key
        //使用迭代器遍历set集合
        Iterator<String>iterator=set.iterator();
        while(iterator.hasNext()){
            String key=iterator.next();
            //3、通过Map集合中的方法get(),通过Key找到value
            Integer integer=map.get(key);//根据指定的键,找到对应的值
            System.out.println(key+","+integer);

        }
        System.out.println("增强For循环========");
        for(String key:set){
            Integer integer=map.get(key);//根据指定的键,找到对应的值
            System.out.println(key+","+integer);
        }
    }

En segundo lugar, utilice objetos de entrada para recorrer la colección de mapas

public static void main(String[] args) {

        Map<String,Integer> map=new HashMap<>();
        map.put("郭靖",175);
        map.put("杨过",180);
        map.put("乔峰",183);
        map.put("无忌",177);
        //一、使用Map集合中的entrySet()方法,把Map集合中多个entry对象取出来,存储到Set集合中
        Set<Map.Entry<String,Integer>>set=map.entrySet();
        //二、遍历Set集合,获取每一个entry对象
        Iterator<Map.Entry<String,Integer>>iterator=set.iterator();
        while(iterator.hasNext()){
            Map.Entry<String,Integer>entry=iterator.next();
            String key=entry.getKey();
            Integer value=entry.getValue();
            System.out.println(key+","+value);
        }
        System.out.println("增强For循环==============");
        for(Map.Entry<String,Integer>entry:set){
        }

    }

LinkedHashMap: almacenado en orden: es una estructura de almacenamiento de datos que combina una lista vinculada y una tabla hash.

 public class LinkedHashMapDemo { 
        public static void main(String[] args) { 
            LinkedHashMap<String, String> map = new LinkedHashMap<String, String>(); 
            map.put("邓超", "孙俪"); 
            map.put("李晨", "范冰冰"); 
            map.put("刘德华", "朱丽倩"); 
            Set<Entry<String, String>> entrySet = map.entrySet(); 
            for (Entry<String, String> entry : entrySet) { 
                System.out.println(entry.getKey() + " " + entry.getValue()); 
            }
        } 
    }

La creación no es fácil, si este blog es útil para ti, recuerda dejar un mensaje + me gusta.

Supongo que te gusta

Origin blog.csdn.net/promsing/article/details/112404457
Recomendado
Clasificación