|-Lista: se ordenan los elementos (salga a medida que se almacenan y el orden no se enojará). Marca de esquina 2) Debido a este conjunto, el sistema tiene índices,
|- ArrayList: la estructura de datos subyacente utiliza una estructura de matriz (la longitud de la matriz es 50% más larga que la variable) (la característica es que la consulta es muy rápida, pero la adición y la eliminación son lentos) no se sincronizan
|- LinkedList: la estructura de datos subyacente es una estructura de lista vinculada (las características son una consulta más lenta y una adición y eliminación más rápidas)
|- Vector: la capa subyacente es la sincronización de hilo de la estructura de datos de la matriz (la longitud de la matriz se extiende al 100% por variable) (tanto consultas como adiciones y deleciones son muy lenta, y fue reemplazada por ArrayList)
Lista: un método único.
aumentar
La copia del código es la siguiente:
boolean add (int index, e elemento)
boolean addall (índice, colección)
La copia del código es la siguiente:
public static void list_add () {
ArrayList a1 = new ArrayList ();
a1.add ("java");
a1.add ("php"); // elementos en la colección de listas se pueden repetir
a1.add (". net");
System.out.println ("Colección original:"+A1);
a1.add (1, "flash");
a1.add (0, "ps");
System.out.println (A1);
ArrayList a2 = new ArrayList ();
A2.Add ("JavaScript");
a2.add ("3dmax");
A2.Add ("IBM");
a1.addall (0, a2);
System.out.println (A1);
}
Eliminar elementos en la ubicación especificada
La copia del código es la siguiente:
Boolean Retember (INT índice)
La copia del código es la siguiente:
public static void list_remove () {
ArrayList a1 = new ArrayList ();
a1.add ("javaScript");
a1.add ("php");
a1.add ("flash");
System.out.println ("Colección original:"+A1);
a1.remove (0);
System.out.println (A1);
}
Modificar el elemento del conjunto de ángulo especificado (INT índice, elemento E) El elemento devuelto se modifica
La copia del código es la siguiente:
public static void list_set () {
ArrayList a1 = new ArrayList ();
a1.add ("javaScript");
a1.add ("php");
a1.add (". net");
System.out.println ("Colección original:"+A1);
a1.set (1, "falsh");
System.out.println (A1);
}
controlar
La copia del código es la siguiente:
get (int index) Devuelve el elemento en la posición especificada en la lista
Sublist (int fromIndex, int toIndex) devuelve algunos elementos entre FromIndex (incluido) y Toindex (excluyendo) especificados en la lista.
La copia del código es la siguiente:
public static void list_get () {
ArrayList a1 = new ArrayList ();
a1.add ("java");
a1.add ("php");
a1.add ("flash");
System.out.println (a1.get (0)); // Obtener el elemento del punto de ángulo especificado.
System.out.println (a1.sublist (1, 3)); // Obtén el elemento en una parte determinada de la colección, incluida la cabeza pero no la cola
}
Iterador específico de la colección de listas: listIterator (es una subinterfaz del iterador)
Aviso:
Durante la iteración, los elementos en la colección no se pueden operar a través del método del objeto de recolección
Porque ocurrirá una excepción concurrente de Modificación Excepción (excepción concurrente)
Por lo tanto, al iterar, solo puede usar el método Iterator para crear elementos
Debido a que el método iterador es limitado, solo puede juzgar, eliminar y eliminar elementos.
Si desea otras operaciones, como agregar, modificar, etc., debe usar su subterfaz, Listiterator
Esta interfaz solo se puede obtener a través del método Listiterator de la colección de la lista
La copia del código es la siguiente:
clase pública listiterAtiteratordemo {
public static void main (string [] args) {
ArrayList a1 = new ArrayList ();
a1.add ("java01");
a1.add ("java02");
a1.add ("java03");
a1.add ("java04");
System.out.println ("La colección original es:"+A1);
/*Prepararse para agregar o eliminar elementos durante el proceso de iteración
Iterador it = al.iterator ();
while (it.hasnext ()) {
Object obj = it.next ();
if (obj.equals ("java02"))
//al.add("Java008") ;// La excepción concurrente ocurrirá porque el iterador está operando la colección y ya no puede usar el método de colección para operar la colección.
it.remove (); // elimina la referencia de Java02 de la colección
System.out.println ("obj:"+obj);
}
*/
// Solo listiterator de la lista tiene las funciones de agregar, eliminar, modificar y verificar, porque solo la lista tiene el índice
ListIterator li = a1.listiterator ();
while (li.hasnext ()) {
if (li.next (). igual ("java02"))
//li.add("Java009 ");
li.set ("java006");
}
}
}
Vector: la enumeración es una forma única de obtener en vector, que es muy similar a un iterador (de hecho, la enumeración y la iteración son las mismas) y han sido reemplazados por un iterador.
La copia del código es la siguiente:
clase pública vectordemo {
public static void main (string [] args) {
Vector v = nuevo vector ();
V.Add ("Java01");
V.Add ("Java02");
V.Add ("Java03");
V.Add ("Java04");
para (enumeración en = V.elements (); en.hasmoreelements ();) {
System.out.println (en.nextelement ());
}
}
}
LinkedList:
Método especial:
addfirst ();
getFirst (); Si no hay elementos en la colección, aparecerá nosuchelementException
removeFirst (); Si no hay elementos en la colección, aparecerá nosuchelementException
Los enfoques alternativos aparecen en JDK1.6
ofertaFirst ();
peekfirst (); Si no hay elementos en la colección, se devolverá nulo
pollFirst (); Si no hay elementos en la colección, se devolverá nulo
La copia del código es la siguiente:
clase pública LinkedListDemo {
public static void main (string [] args) {
LinkedList Link = new LinkedList ();
link.add ("java01");
link.add ("java02");
link.add ("java03");
link.add ("java04");
while (! link.isEmpty ()) {
System.out.println ((link.removelast ()));
}
}
}