1) Resumen de la colección
Colección: La colección es un tipo de contenedor proporcionado en Java, que se puede utilizar para almacenar múltiples datos.
Dado que las colecciones y las matrices son contenedores, ¿cuál es la diferencia?
* La longitud de la matriz es fija. La longitud de la colección es variable.
* Los elementos del mismo tipo se almacenan en la matriz y se pueden almacenar los valores básicos del tipo de datos.
Las colecciones almacenan objetos. Y los tipos de objetos pueden ser inconsistentes. En desarrollo, cuando hay muchos objetos, las colecciones se utilizan para el almacenamiento.
Las colecciones se pueden dividir en dos categorías según su estructura de almacenamiento, a saber, la colección de una columna `java.util.Collection` y la colección de dos columnas` java.util.Map`. Hoy presentamos principalmente la colección` Collection`.
Colección: la interfaz raíz de la clase de colección de columna única, utilizada para almacenar una serie de elementos que cumplen ciertas reglas .
Tiene dos subinterfaces importantes, `java.util.List` y` java.util.Set`.
Entre ellas, las características de `Lista` son elementos ordenados y elementos repetibles. La característica de 'Set' es que los elementos están desordenados y no son repetibles.
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 comunes de recolección
public boolean add (E e): agrega el objeto dado a la colección actual.
public void clear (): borra todos los elementos de la colección.
public boolean remove (E e): elimina el objeto dado de la colección actual.
public boolean contiene (E e): determine si la colección actual contiene el objeto dado.
public boolean isEmpty (): determina si la colección actual está vacía.
public int size (): Devuelve el número de elementos en la colección.
public Object [] toArray (): almacena los elementos de la colección en una matriz.
import java.util.ArrayList; import java.util.Collection; public class Demo1Collection { public static void main (String [] args) { // crear objeto de colección // usar forma polimórfica Collection <String> coll = new ArrayList <String > (); // Cómo usar // Agregar función booleana add (String s) coll.add ("小 李广"); coll.add ("Sweeping monk"); coll.add ("石破天"); Sistema .out.println (coll); // boolean contiene (E e) Determine si o existe en la colección System.out.println ("Determine si el monje barrido está en la colección" + coll.contains ("monje barrido")); // boolean remove (E e) elimina el elemento o en la colección System.out.println ("Remove Shi Potian:" + coll.remove ("石破天")); System.out.println ("Elementos en la colección después de la operación:" + coll); // Hay varios elementos en la colección size () System.out.println ("Hay" + coll.size () + "elementos" en la colección); // Object [] toArray () se convierte en un objeto Object array [ ] objetos = coll.toArray (); // atraviesa la matriz para (int i = 0; i <objects.length; i ++) { System.out.println (objects [i]); } // void clear () borra la colección coll.clear (); System.out.println ("El contenido de la colección es:" + coll); // boolean isEmpty () Determine si está vacío System.out.println (coll.isEmpty ()); } }
2) Lista de colección
Características de la colección List:
1. Colección ordenada
2. Con un índice, puede manipular con precisión los elementos de la colección a través del índice.
3. Puede haber elementos duplicados en la colección Compare los elementos duplicados con el método igual de los elementos.
Métodos comunes
Subclases de lista
1) colección ArrayList
Formato básico:
2) colección LinkedList
3) establecer colección
Establecer funciones de colección
1. Trastorno
2. No repetir
Establecer subclase de colección
1) colección hashSet
HashSet almacena tipos personalizados
prueba de paquete; import java.util.Objects; clase pública Estudiante { nombre de cadena privada; int int privado; Public student (String name, int age) { this.name = name; this.age = age; } public String getName () { return name; } public void setName (String name) { this.name = name; } public int getAge () { return age; } public void setAge (int age) { this.age = age; } @Override public String toString () { return "Estudiante [nombre =" + nombre + ", edad =" + edad + "]"; } @Override public int hashCode () { return Objects.hash (nombre, edad); } @Override public boolean equals (Object obj) { if (this == obj) return true; if (obj == null || getClass ()! = obj.getClass ()) devuelve falso; Estudiante estudiante = (Estudiante) obj; return age == student.age && Objects.equals (nombre, estudiante.nombre); } }
prueba de paquete; import java.util.HashSet; public class test3 { public static void main (String [] args) { HashSet <Student> stuSet = new HashSet <Student> (); Estudiante stu = estudiante nuevo ("于谦", 43); stuSet.add (stu); stuSet.add (nuevo Estudiante ("郭德纲", 44)); stuSet.add (nuevo Estudiante ("于谦", 43)); stuSet.add (nuevo Estudiante ("郭 麒麟", 23)); para (Estudiante stu1: stuSet) { System.out.println (stu1); } } }
2) LinkedHashSet