|
|
|
![]() |
|
Strumenti |
![]() |
#1 |
Member
Iscritto dal: Sep 2009
Messaggi: 85
|
[JAVA] Classe Car+ Collection
Ciao ragazzi, ho bisogno di aiuto, è da ieri che mi sono bloccato in questa classe.
Codice:
class Car implements CarElement { ArrayList<CarElement>lista=new ArrayList<CarElement>(); public Car() { //create new ArrayList of CarElement this.lista = new ArrayList<CarElement>(); lista.add(new Wheel("front left")); lista.add(new Wheel("front right")); lista.add(new Wheel("back left")); lista.add(new Body()); lista.add(new Engine()); } Il problema è che devo poter scorrere l'oggetto Car che è una lista di CarElement. Mi servirebbe un metodo magari statico che dato un oggetto di tipo Car me lo trasformi in una Collection che contiene 6 oggetti (4 oggetti di tipo Wheel, 1 Body e 1 Engine). In sostanza da un oggetto Car devo poter ottenere una Collection... Perchè mi serve per fare una roba, con un pattern... Cmq con questo metodo dovrei risolvere... Vi prego aiutatemi!!! |
![]() |
![]() |
![]() |
#2 |
Senior Member
Iscritto dal: Oct 2001
Messaggi: 11471
|
Implementa l'interfaccia Iterable<CarElement> e ritorna un iteratore a partire dalla lista. In questo modo puoi scorrere il contenuto di una macchina con un for in questo modo.
Codice:
for (CarElement element : car) { ... } |
![]() |
![]() |
![]() |
#3 |
Member
Iscritto dal: Sep 2009
Messaggi: 85
|
Scusa ma non conosco bene questa interfaccia...
Come funziona? Non capisco come mettere l'iteratore su Car... Qualcosa tipo: Iterator iteraror=car.iterator(); ??? Ultima modifica di ectobsidian : 28-11-2013 alle 17:51. |
![]() |
![]() |
![]() |
#4 |
Member
Iscritto dal: Sep 2009
Messaggi: 85
|
Rettifico:
Ho risolto tuttoooo!!! Era più facile del previsto. Ho fatto un metodo stupido che fa così: public ArrayList<CarElement> getLista() { return this.lista; } Mi stavo andando a complicare la vita per niente...Così quando ho una Car faccio questo metodo e quindi ho la collection che volevo! Grazie cmq!!! Ultima modifica di ectobsidian : 29-11-2013 alle 14:41. |
![]() |
![]() |
![]() |
Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 23:07.