2016-04-21 4 views
0

Also, ich habe eine ArrayList, die aus einer TXT-Datei stammt. Es zeigt die folgenden Angaben:Indizieren Sie die ID-Nummer in einer ArrayList

Id 
Car Manufacturer 
Car Type 
Colour 
*blank line* 

Beispiel:

21 
Vauxhall 
Corsa 
red 

19 
Vauxhall 
Corsa 
blue 

18 
Vauxhall 
Corsa 
White 

Ich bin gespannt, wie wie die Id der „Index“ eines Arraylist zu machen, so dass, wenn ein Auto gelöscht oder hinzugefügt die Arraylist, Es würde automatisch die Id-Nummer anpassen.

+0

Vielleicht stattdessen eine 'HashMap' verwenden setzen ... – brso05

+0

Arraylisten haben nicht willkürlich, nicht zusammenhängenden Indizes ermöglichen. Eine "Map" mit etwas Geschmack wäre besser. –

+0

Das fühlt sich an wie ein [XY Problem] (http://meta.stackexchange.com/questions/66377/what-is-the-xy-problem). Was versuchst du damit zu erreichen? – azurefrog

Antwort

0

Sie müssen die ID als Primärschlüssel für diese ArrayList festlegen. Sie können durch die Schaffung eines Arraylist tun, dass das enthält HashMap

Objekte ist ArrayList<HashMap<int, CarObject>> = new ArrayList()

Sortierung wird dann eine Frage der in der Arraylist durch die Integer-IDs Iterieren Objekte

0

Sie falsche Datastructure mit ... Für Ihre Zweck etwas wie HashMap oder LinkedHashMap wäre mehr optimal. Sie können alle Ihre Auto-Daten in POJOs

class Car { 
int Id; 
String make, style, color; 
getters/setters....; 
} 
List<Car> list = myReadMethod(); 

//Then you make 
Map<int, Car> myCars = new HashMap<Int, Car>; 
for(Car car : list) 
    myCars.put(car.getId, car); 
Verwandte Themen