Kann ich für Array-Namen Variablen verwenden?

Diskutiere Kann ich für Array-Namen Variablen verwenden? im Java Basics - Anfänger-Themen Bereich.
Status
Nicht offen für weitere Antworten.
O

Olleritsch

Hi Community,
ich habe folgendes Problem, ich versuche das mal auf eine etwas abstraktere Art und Weise zu erklären:
Ich habe insgesamt 50 Objekte in einer ArrayList, die ich anhand ihrer Eigenschaften in weitere ArrayLists einsortieren möchte. Jedes der 50 Objekte hat eine Eigenschaft, z.B. Himmelsrichtung.
Ich möchte jetzt mittels einer for-Schleife jedes Objekt auf seine Himmelsrichtung überprüfen. Wenn das Objekt die Himmelsrichtung "Nord" hat, soll es der ArrayList
Code:
nord
hinzugefügt werden, wenn es die Himmelsrichtung "West" hat, soll es der ArrayList
Code:
west
hinzugefügt werden, für Osten und Süden genauso.

Mein Ansatz dazu war folgender:

Java:
for (Route aktuelleroute : allerouten) {
aktuelleroute.getHimmelsrichtung().add(aktuelleroute);
}
Da würde z.B. ja dann (eigentlich) stehen:
Java:
nord.add(aktuelleroute)
oder halt
Java:
west.add(aktuelleroute)
usw...

Aber das klappt nicht, weil der Part
Code:
aktuelleroute.getHimmelsrichtung()
als Name der ArrayList behandelt wird und nicht das Ergebnis der Methode
Code:
getHimmelsrichtung()
.

Wie kann ich das am besten lösen?
Danke schonmal!
 
faetzminator

faetzminator

Du kannst eine Map<String, List<Route>> machen. So könnte das dann aussehen:
Java:
for (Route aktuelleroute : allerouten) {
    himmelsrichtungMap.get(aktuelleroute.getHimmelsrichtung()).add(aktuelleroute);
}
Natürlich musst du zuerst die benötigten Listen instanziieren oder mit if (!himmelsrichtungMap.contains(...)) instanziieren.
Des weiteren schreibt man Variablen in Java camelCase und nicht lowercase.
 
O

Olleritsch

Danke für die schnelle Antwort, klappt super mit der HashMap!
 
Thema: 

Kann ich für Array-Namen Variablen verwenden?

Status
Nicht offen für weitere Antworten.
Passende Stellenanzeigen aus deiner Region:
Anzeige

Neue Themen

Anzeige

Anzeige
Oben