Foros del Web » Programación para mayores de 30 ;) » Java »

Eliminar elementos de una lista

Estas en el tema de Eliminar elementos de una lista en el foro de Java en Foros del Web. Hola Podría alguien decirme como puedo eliminar elementos de una lista?, es decir, como puedo borrar un nodo de una lista? Muchas gracias...
  #1 (permalink)  
Antiguo 12/11/2006, 22:23
 
Fecha de Ingreso: abril-2006
Mensajes: 133
Antigüedad: 18 años
Puntos: 2
Eliminar elementos de una lista

Hola
Podría alguien decirme como puedo eliminar elementos de una lista?, es decir, como puedo borrar un nodo de una lista?

Muchas gracias
  #2 (permalink)  
Antiguo 12/11/2006, 23:10
Avatar de chuidiang
Colaborador
 
Fecha de Ingreso: octubre-2004
Mensajes: 3.774
Antigüedad: 19 años, 6 meses
Puntos: 454
Hola:
Si te refieres a un JList, debes usarlo con un modelo de datos, así

DefaultListModel modelo = new DefaultListModel();
JList lista = new JList(modelo);

Una vez hecho esto, trabaja los datos siempre con modelo, que tiene métodos para añadir, borrar y modificar elementos.

Se bueno.
__________________
Apuntes Java
Wiki de Programación
  #3 (permalink)  
Antiguo 13/11/2006, 23:03
 
Fecha de Ingreso: abril-2006
Mensajes: 133
Antigüedad: 18 años
Puntos: 2
Hola.
Muchas gracias por tu respuesta, pero no estoy usando el JList. Mira el codigo que tengo:

Código PHP:
import javax.swing.JOptionPane;
import java.lang.String;

public class 
Lista extends JOptionPane{
    
String Nombre;
    
String Apellido;
    
String Telefono;
    
String Celular;
    
Lista index;
    
    public 
Lista (String aString bString cString d){
    
Nombre a;
    
Apellido b;
    
Telefono c;
    
Celular d;
    
index null;
    }
    public 
Lista (String aString bString cString dLista sgte){
    
this(a,b,c,d);
    
index sgte;
    }
    
    public 
String mensaje(String z){
    return 
JOptionPane.showInputDialog(z);
    }
    public 
void nuevoNodo(String aString bString cString d){
        if (
index == null){
            
index = new Lista(NombreApellidoTelefonoCelular);
        }else{
            
index = new Lista(NombreApellidoTelefonoCelularindex );
        }
        
Nombre a;
        
Apellido b;
        
Telefono c;
        
Celular d;
    }
    
    public 
void borrarNodo(String a){
        
Lista borrarDeLista;
        
String borrar;
        
borrar JOptionPane.showInputDialog("Cual nombre desea borrar?");
        if (
borrar == Nombre){
            if ((
index == null)&&(borrar!=Nombre)){
                
index = new Lista(NombreApellidoTelefonoCelular);
            }else if ((
index!=null)&&(borrar!=Nombre)){
                
index = new Lista(NombreApellidoTelefonoCelularindex );
                }
            }
            
borrarDeLista index;
            
Nombre =a;
        
    }
    public 
void showLista(){
        
System.out.println("Nombre = "+Nombre);
        
System.out.println("Apellido = "+Apellido);
        
System.out.println("Telefono = "+Telefono);
        
System.out.println("Celular = "+Celular);
        
System.out.println("-------------------");
        if (
index!=null){
            
index.showLista();
        }
    }
    public static 
void main(String[] args){
    
int cont 0;
    
String a;
    
String b;
    
String c;
    
String d;
    
Lista p = new Lista((JOptionPane.showInputDialog("Inserte el nombre")),(JOptionPane.showInputDialog("Inserte el apellido")), 
    (
JOptionPane.showInputDialog("Inserte el telefono de la casa")), (JOptionPane.showInputDialog("Inserte el telefono de celular")));
    
cont Integer.parseInt(JOptionPane.showInputDialog("Quiere seguir??"));
    
//if (cont > 1){
        
while (cont==1){
            
p.nuevoNodo(p.mensaje("Inserte el nombre"),p.mensaje("Inserte el apellido"),p.mensaje("Inserte el telefono de casa")
            ,
p.mensaje("Inserte el celular"));
            
cont Integer.parseInt(JOptionPane.showInputDialog("Quiere seguir??"));
        }
    
    
p.showLista();
    
p.borrarNodo(p.mensaje("Inserte el nombre a borrar"));
    
System.out.println("*************");
    
p.showLista();
    }

Ya tengo una lista creada, ahora lo que estoy tratando de hacer es borrar un nodo de esta

Gracias y un saludo
  #4 (permalink)  
Antiguo 14/11/2006, 01:41
 
Fecha de Ingreso: octubre-2003
Mensajes: 3.578
Antigüedad: 20 años, 6 meses
Puntos: 51
Si haces tú una clase Lista, tendrás que ser tú mismo el que le añada un método para borrar un nodo, dependiendo de como la hayas implementado. De todas formas, clases que implementen listas ya las hay hechas, así que quizá sería más fácil que usaras una de ellas, aunque sea internamente para almacenamiento.

Y como consejo general, una clase que es una lista y ademas un JOptionPane y es la clase principal de tu programa... es algo extraño. La filosofia general que se intenta seguir es que UNA clase haga principalmente UNA cosa y que construyas distintas clases que se coordinen. Así es más fácil la comprensión y depuración de los programas.

S!
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 21:57.