Problema em JAVA com ArrayList

whizzfrapp

Membro
Boa noite.

Surgiu-me um pequeno problema enquanto estava a fazer um programa em Java.

Gostava de saber se é possível aceder a um atributo específico de um Objecto que se encontra numa ArrayList.

Do género:

ArrayList com objectos do tipo Livro(altura,espessura),

como é que acedo ao camp "espessura"?

Se fizer (por exemplo) array.get(i) dentro de um ciclo for, obtenho o objecto e não a espessura. Como é que faço para obter a espessura?


Desde já, o meu obrigado!


Cump's
 
Tens de fazer o chamado "Cast"...

Livro liv = (Livro) array.get(i);
liv.espessura

OU

((Livro) array.get(i)).espessura
 
Última edição:
Se o atributo espessura for privado, não te esqueças que o cliente não tem acesso a ele. Convém teres um getter que te devolva a espessura.

A tua classe Livro deve ter um metodo do tipo:
PHP:
public int getEspessura() {
return espessura;

Depois na tua lista de livros:
PHP:
List<Livro> listaLivros = new ArrayList<Livro>();

Depois é usar a solução do SoundSurfer, ou:
PHP:
int espessura = listaLivros.get(i).getEspessura();

ou

PHP:
Livro book = lista.get(i);
int espessura = book.getEspessura();

Os casts aqui não são necessários, uma vez que é tudo do mesmo tipo.
 
Back
Topo