Académique Documents
Professionnel Documents
Culture Documents
La clase LinkedList implementa la interface List. Eso quiere decir que tendr una serie de
mtodos propios de esta interface y comunes a todas las implementaciones. As utilizando
siempre que se pueda declaracin de objetos del tipo definido por la interface podemos cambiar
relativamente fcil su implementacin (por ejemplo pasar de ArrayList a LinkedList y viceversa) y
conseguir mejoras en el rendimiento de nuestros programas con poco esfuerzo.
La clase LinkedList extiende AbstractSequentialList e implementa la interfaz List.Proporciona
una estructura de datos en lista enlazada.
La clase LinkedList admite dos constructores. El primer constructor construye una lista enlazada
vaca:
LinkedList( )
El siguiente constructor construye una lista enlazada que se inicializa con los elementos de la
coleccin c.
LinkedList(Collection c)
Aparte de los mtodos heredados de sus clases para padres, LinkedList define los mtodos
siguientes:
S
N
1
anular clear ()
Elimina todos los elementos de esta lista.
Clon Object ()
Devuelve una copia superficial de esta LinkedList.
10
el
elemento
en
la
posicin
especificada
en
esta
lista. Lanza
Objeto GetFirst ()
Devuelve el primer elemento de esta lista. Lanza NoSuchElementException si esta lista
est vaca.
12
Objeto getLast ()
Devuelve el ltimo elemento de esta lista. Lanza NoSuchElementException si esta lista
est vaca.
13
14
15
16
Elimina
el
elemento
en
la
posicin
especificada
en
esta
lista. Lanza
esta
lista. Lanza
la
primera
aparicin
del
elemento
especificado
en
Objeto removeFirst ()
Elimina y devuelve el primer elemento de esta lista. Lanza NoSuchElementException si
esta lista est vaca.
19
Objeto removeLast ()
Elimina y devuelve el ltimo elemento de esta lista. Lanza NoSuchElementException si
esta lista est vaca.
20
21
int size ()
Devuelve el nmero de elementos en esta lista.
22
Object [] toArray ()
Devuelve una matriz que contiene todos los elementos en esta lista en el orden
correcto. Lanza NullPointerException si la matriz especificada es nula.
23
De nuevo las listas, pero esta va vez con LinkedList, lo que permite que se agreguen o eliminen
elementos en la lista al inicio o al final.
LIKENDLIST
import java.util.*;
public class ListaLigada {
public static void main (String args[]) {
Scanner leer = new Scanner(System.in);
int num;
int op;
LinkedList lista = new LinkedList();
do{
System.out.println( "\t Men \t" );
System.out.println( "Operaciones con listas" );
System.out.println( "1.- Insertar al principio" );
System.out.println( "2.- Insertar al final" );
System.out.println( "3.- Borrar al principio" );
System.out.println( "4.- Borrar al final" );
System.out.println( "5.- Mostrar la lista" );
System.out.println( "6.- Borrar toda la lista" );
System.out.println( "7.- Salir" );
System.out.println( "\n" );
System.out.println( "Elija la operacin que desee" );
op = leer.nextInt();
switch(op){
case 1:
System.out.println( "Inserte numero" );
num = leer.nextInt();
lista.addFirst(num);
break;
case 2:
System.out.println( "Inserte numero" );
num = leer.nextInt();
lista.addLast(num);
break;
case 3:
System.out.println( "Se borrara el primer nodo" );
lista.removeFirst();
break;
case 4:
System.out.println( "Se borrara el nodo final" );
lista.removeLast();
break;
case 5:
System.out.println( "La lista es la siguiente" );
List lista2 = new ArrayList(lista);
Iterator it = lista2.iterator();
while (it.hasNext()){
System.out.println(it.next()+"");
}
break;
case 6:
System.out.println( "Se borraran todos los elementos de
la lista" );
lista.clear();
break;
case 7:
System.out.println( "Al rato" );
break;
}
}
while( op != 7 );
}
}
CLASE ABSTRACTSET
Esta clase proporciona una implementacin del esqueleto de la Set interfaz para minimizar el
esfuerzo necesario para implementar esta interfaz.
El proceso de implementacin de un conjunto mediante la ampliacin de esta clase es idntica a
la de la aplicacin de una coleccin extendiendo AbstractCollection, excepto que todos los
mtodos y constructores en las subclases de esta categora debern obedecer las restricciones
adicionales impuestas por el Conjunto de interfaz (por ejemplo, el agregar mtodo no debe
permitir la adicin de varias instancias de un objeto a un conjunto).
Tenga en cuenta que esta clase no anula ninguna de las implementaciones de
la AbstractCollection clase. Simplemente aade implementaciones para los iguales y hashCode.
ABSTRACTSET
packagejava.util;
publicabstractclassAbstractSetextendsAbstractCollectionimplementsSet{
protectedAbstractSet(){
}
publicbooleanequals(Objectother){
if(this==other)returntrue;
if(!(otherinstanceofSet))returnfalse;
Setset=(Set)other;
if(set.size()!=size())returnfalse;
returncontainsAll(set);
}
publicinthashCode(){
intresult=0;
Iteratoriterator=iterator();
while(iterator.hasNext()){
Objecto=iterator.next();
if(o!=null)result+=o.hashCode();
}
returnresult;
}
publicbooleanremoveAll(Collectionc){
//TODOiteratoroversmallercollection
returnsuper.removeAll(c);
}
}
http://docs.oracle.com/javase/7/docs/api/java/util/AbstractSet.html