Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package prueba.lista;
- public class Lista {
- Nodo inicio;
- Nodo fin;
- public Lista()
- {
- inicio = null;
- fin = null;
- }
- public void InsertarFinal( String info)
- {
- Nodo nuevo = new Nodo( info, null);
- if (inicio == null)
- {
- fin = nuevo;
- inicio = nuevo;
- }
- else
- {
- fin.setSiguiente(nuevo); <-------------------------------------
- fin = nuevo; // esta es la linea de codigo que no comprendo, ^
- //porque al asignarle nuevo a fin, a mi parecer |
- //se borra lo que estaba en fin anteriormente y |
- //ahora tendria unicamente nuevo; y la linea |
- //anterior de codigo ----------------->
- //no seriviría de nada porque la variable fin
- //se sobreescribío completamente
- }
- }
- public void Mostrar()
- {
- Nodo temp = inicio; //esto es lo otro que no entiendo, donde se
- //guardaron todos los elementos? en variable inicio?
- //como es eso posible? la unica vez que se le
- //asignó algo a variable inicio es cuando se
- // validaba que era null, entonces se le asignaba
- // el primer elemento de la lista
- while( temp != null)
- {
- System.out.println( temp.getInfo() );
- temp = temp.siguiente;
- }
- }
- }
- package prueba.lista;
- public class Nodo {
- private String info;
- Nodo siguiente;
- public Nodo( String i, Nodo s)
- {
- info = i;
- siguiente = s;
- }
- public String getInfo() {
- return info;
- }
- public void setSiguiente(Nodo siguiente) {
- this.siguiente = siguiente;
- }
- }
- package prueba.lista;
- public class PruebaLista {
- public static void main(String[] args) {
- Lista l1 = new Lista();
- l1.InsertarFinal("a");
- l1.InsertarFinal("b");
- l1.InsertarFinal("c");
- l1.InsertarFinal("d");
- l1.Mostrar();
- }
- }
- Inicio-->Nodo1(sig)-->Nodo2(sig)-->Nodo3(sig)<--Fin
- Inicio-->Nodo1(sig)-->Nodo2(sig)-->Nodo3(sig)-->Nodo4(sig)<--Fin
Add Comment
Please, Sign In to add comment