PDA

Ver la Versión Completa : problema con ArrayList


reina
11-04-2006, 16:21:49
Hola! a ver si me ayudan..tengo que hacer una lista de objetos..y como me daba errores probe de hacer un ejemplo comun..no con lo que tengo que hacer. Uso ArrayList, compilo con jdk 1.5 y uso el ide eclipse.
La cosa es que no sé si es por la version o que me esta pidiendo que parametrize el arraylist ya que es generico busque en la ayuda y me indico como hacerlo..mejor dicho me agrego codigo solo, adjunto el ejemplo:



package domain;
import java.util.*;
/**
* @author ReinaLau
*
*/
class Entero {
public int nro;
/**
* @return Returns the nro.
*/
public int getNro() {
return nro;
}
/**
* @param nro The nro to set.
*/
public void setNro(int nro) {
this.nro = nro;
}
}
public class Listas {
public ArrayList<Entero> Lista;
public int Item;
ArrayList<?> Crear (int n) {
ArrayList<?> Lista=new ArrayList<Object>(n);
return Lista;
}
ArrayList<Entero> Insertar(Entero Item) {
Lista.add(Item);
return Lista;
}
int Longitud(){
return Lista.size();
}
public static void main (String[] args){
Listas L= new Listas();
Entero E= new Entero();
E.setNro(13);
L.Crear(10);
L.Insertar(E);
System.out.print("Esta es la long" + L.Longitud());
}

}



Ya no me muestra la cruz como que el metodo add es erroneo pero pone una marca del compilador!, bueno si alguien sabe que es lo que pasa me responde, ya que soy muy pricipiante..y necesitaria poder usar esa lista. Lo de arriba es la version modificada por el ide..copio mi codigo original con marca de error, tal vez los metodos deberian ser public..la verdad que probe de mil maneras:


package domain;
import java.util.*;
/**
* @author ReinaLau
*
*/
class Entero {
public int nro;
/**
* @return Returns the nro.
*/
public int getNro() {
return nro;
}
/**
* @param nro The nro to set.
*/
public void setNro(int nro) {
this.nro = nro;
}
}
public class Listas {
public ArrayList<Entero> Lista;
public int Item;
ArrayList Crear (int n) {
ArrayList Lista=new ArrayList<Object>(n);
return Lista;
}
ArrayList Insertar(Entero Item) {
Lista.add(Item);
return Lista;
}
int Longitud(){
return Lista.size();
}
public static void main (String[] args){
Listas L= new Listas();
Entero E= new Entero();
E.setNro(13);
L.Crear(10);
L.Insertar(E);
System.out.print("Esta es la long" + L.Longitud());
}

}



agradeceria respuestas :D

saludoss

LA PATRIA SERA LIBRE

jasmad
26-03-2012, 22:49:16
:confused:
podrias dar una descripcion mas clara de lo que pasa, para entenderte mejor?
:rolleyes:

AlejoNait
13-04-2012, 06:43:35
pues la verdad no se cuál o dónde aparece el error, pero creo que deberías tener un método GET
dentro de la clase Entero

algo como
public int getNumero(){//este metodo en la clase Entero
return this.nro;
}

public static void main (String[] args){
Listas L= new Listas();
Entero E= new Entero();
E.setNro(13);
L.Crear(10);
L.Insertar(E.getNumero());
System.out.print("Esta es la long" + L.Longitud());
}

winzo
13-04-2012, 18:08:17
1) Aclara tu pregunta y tu código adjunto(se ve enorme y poco legible).
2) Para usar un ArrayList puedes hacerlo de dos formas:

a) ArrayList lista = new ArrayList();
b) ArrayList<String> lista = new ArrayList<lista>();(a partir de la jdk5)

Ambas formas son correctas, en el caso de la segunda, utilizando el ejemplo que te di, solo puedes agregar datos de tipo 'String', si es genérico como en el ejemplo 'a' pues pueden ser objetos de cualquier tipo

roman
13-04-2012, 19:01:48
Quiero suponer, que en seis años que han transcurrido, ya ha logrado resolver su problema :D

// Saludos

winzo
08-05-2012, 23:10:32
Quiero suponer, que en seis años que han transcurrido, ya ha logrado resolver su problema :D

// Saludos

Jeje, me parto de risa, no vi la fecha, Jajajaja, quizás se dedicó a vender churros en vista de que no hubo solución.:D