|-Lista: os elementos são ordenados (saia à medida que são armazenados e o pedido não será confuso). canto marca 2) por causa disso, o sistema possui índices,
|- Arraylist: A estrutura de dados subjacente usa uma estrutura de matriz (o comprimento da matriz é 50% maior que a variável) (o recurso é que a consulta é muito rápida, mas a adição e a exclusão são lentas) os threads não são sincronizados
|- LinkedList: a estrutura de dados subjacente é uma estrutura de lista vinculada (as características são mais lentas de consulta e adição e exclusão mais rápidas)
|- Vetor: A camada subjacente é a sincronização da estrutura da estrutura de dados da matriz (o comprimento da matriz é 100% estendido pela variável) (consultas e adições e exclusões são muito lentas e foi substituída pela ArrayList)
Lista: um método exclusivo.
aumentar
A cópia do código é a seguinte:
Boolean Add (Int Index, E elemento)
Boolean Addall (índice, coleção)
A cópia do código é a seguinte:
public static void list_add () {
Arraylist A1 = new ArrayList ();
A1.Add ("Java");
a1.add ("php"); // elementos na coleção de listas podem ser repetidos
a1.add (". net");
System.out.println ("Coleção 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);
}
Excluir elementos no local especificado
A cópia do código é a seguinte:
Remova booleana (índice int)
A cópia do código é a seguinte:
public static void list_remove () {
Arraylist A1 = new ArrayList ();
A1.Add ("JavaScript");
a1.add ("php");
a1.add ("flash");
System.out.println ("Coleção original:"+A1);
a1.remove (0);
System.out.println (A1);
}
Modifique o elemento do conjunto de ângulo especificado (índice int, e elemento) o elemento retornado é modificado
A cópia do código é a seguinte:
public static void list_set () {
Arraylist A1 = new ArrayList ();
A1.Add ("JavaScript");
a1.add ("php");
a1.add (". net");
System.out.println ("Coleção original:"+A1);
A1.set (1, "Falsh");
System.out.println (A1);
}
verificar
A cópia do código é a seguinte:
get (índice int) retorna o elemento na posição especificada na lista
sublist (int deindex, int toIndex) retorna alguns elementos entre o FromIndex (incluindo) e o ToIndex (excluindo) especificados na lista.
A cópia do código é a seguinte:
public static void list_get () {
Arraylist A1 = new ArrayList ();
A1.Add ("Java");
a1.add ("php");
a1.add ("flash");
System.out.println (a1.get (0)); // Obtenha o elemento do ponto de ângulo especificado.
System.out.println (A1.sublist (1, 3)); // Obtenha o elemento em uma certa parte da coleção, incluindo a cabeça, mas não a cauda
}
ITerador específico da coleção de listas: Listiterator (é uma subinterface do iterador)
Perceber:
Durante a iteração, os elementos da coleção não podem ser operados através do método do objeto de coleção
Porque uma exceção concorrente de exceção (exceção simultânea) ocorrerá
Portanto, quando iterando, você só pode usar o método do iterador para criar elementos
Como o método do iterador é limitado, ele só pode julgar, remover e excluir elementos.
Se você deseja outras operações, como adicionar, modificar etc., você precisa usar sua sub-interface, listiterator
Esta interface só pode ser obtida através do método Listiterator da coleção de listas
A cópia do código é a seguinte:
classe pública listiteratordemo {
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 ("A coleção original é:"+A1);
/*Preparando para adicionar ou excluir elementos durante o processo de iteração
Iterator it = al.iterator ();
while (it.hasnext ()) {
Objeto obj = it.Next ();
if (obj.equals ("java02")))
//al.add("java008") ;// exceção simultânea ocorrerá porque o iterador está operando a coleção e não pode mais usar o método de coleta para operar a coleção.
it.remove (); // Remova a referência Java02 da coleção
System.out.println ("obj:"+obj);
}
*/
// Somente o listiterator da lista tem as funções de adição, exclusão, modificação e verificação, porque apenas a lista tem o índice
Listiterator li = a1.ListIterator ();
while (li.hasnext ()) {
if (li.Next (). Equals ("java02"))
//li.add("java009 ");
li.set ("java006");
}
}
}
Vetor: A enumeração é uma maneira única de buscar o vetor, que é muito semelhante a um iterador (de fato, a enumeração e a iteração são iguais) e foram substituídos por um iterador.
A cópia do código é a seguinte:
classe pública Vectordemo {
public static void main (string [] args) {
Vetor V = new Vector ();
v.add ("java01");
v.add ("java02");
v.add ("java03");
v.add ("java04");
para (enumeração en = v.Elements (); en.hasMoreElements ();) {
System.out.println (en.nextElement ());
}
}
}
LinkedList:
Método especial:
addfirst ();
getfirst (); Se não houver elementos na coleção, os NosuchElementException aparecerão
Removerfirst (); Se não houver elementos na coleção, os NosuchElementException aparecerão
Abordagens alternativas aparecem no JDK1.6
ofertafirst ();
Peekfirst (); Se não houver elementos na coleção, Null será devolvido
Pollfirst (); Se não houver elementos na coleção, Null será devolvido
A cópia do código é a seguinte:
classe pública LinkedListDemo {
public static void main (string [] args) {
LinkList link = new LinkedList ();
link.add ("java01");
link.add ("java02");
link.add ("java03");
link.add ("java04");
while (! link.isempty ()) {
System.out.println ((link.removelast ()));
}
}
}