Du verwendest einen veralteten Browser. Es ist möglich, dass diese oder andere Websites nicht korrekt angezeigt werden.
Du solltest ein Upgrade durchführen oder einen alternativen Browser verwenden.
Du solltest ein Upgrade durchführen oder einen alternativen Browser verwenden.
Java variabler Variablenname in Java
- Ersteller abraxus14
- Erstellt am
TK-Shockwave
Lt. Commander
- Registriert
- März 2003
- Beiträge
- 1.313
Soweit ich weiß gibt es sowas nicht zumindest Java und C#
Du kannst ein Array oder ArrayList verwenden.
Du kannst ein Array oder ArrayList verwenden.
ja also ich weiss erst zur Laufzeit wieviel variablen erzeugt werden sollen, da dies von der eingabe abhängig ist. Ich weiss aber nicht wie man das macht
Ich muss verschiedene Knoten aneinander hängen, deren anzahl und deren Struktur ist dabei von der Eingabe anhhängig. Ich muss also Knoten erzeugen und dann diese in eine Struktur einbetten. Dafür brauch ich aber Variablennamen. Ich weiss aber letztendlich nicht wie viel Namen ich da brauch. Die Anzahl sollte also eher unbeschränkt sein.
Ich muss verschiedene Knoten aneinander hängen, deren anzahl und deren Struktur ist dabei von der Eingabe anhhängig. Ich muss also Knoten erzeugen und dann diese in eine Struktur einbetten. Dafür brauch ich aber Variablennamen. Ich weiss aber letztendlich nicht wie viel Namen ich da brauch. Die Anzahl sollte also eher unbeschränkt sein.
Zuletzt bearbeitet:
Ich weiß nicht so recht was du erreichen möchtest.
Eine Abbildung von Strings auf Objekte kannst du mit einer Map haben (z.B. HashMap). Dadurch kannst du mit dynamisch generierten Namen beliebige Objekttypen verwalten.
Wenn die Namen nicht wirklich erforderlich sind, und die Reihenfolge egal, dann kannst du natürlich auch effizientere Collections verwenden.
Eine Abbildung von Strings auf Objekte kannst du mit einer Map haben (z.B. HashMap). Dadurch kannst du mit dynamisch generierten Namen beliebige Objekttypen verwalten.
Wenn die Namen nicht wirklich erforderlich sind, und die Reihenfolge egal, dann kannst du natürlich auch effizientere Collections verwenden.
Yuuri
Fleet Admiral
- Registriert
- Okt. 2010
- Beiträge
- 13.928
Nein, sieh dir doch erst mal die Verwendung von den in dem Thread genannten Möglichkeiten an - bspw. http://stackoverflow.com/questions/2697182/how-to-use-an-array-list.
TK-Shockwave
Lt. Commander
- Registriert
- März 2003
- Beiträge
- 1.313
Dann pack dein Objekt in ein Array - den Index kannst du auch verwenden. Ich finde es wäre die einfachere & elegantere Lösung.
Es ist auf jeden Fall wichtig die Reihenfolge zu beachten und die Elemnete zuordnen zu können. Kennst du die entprechende Syntax für Java?DjNDB schrieb:Im Grunde schon, nur mit anderer Syntax. Ist es denn wichtig, dass du über einen Index an die Elemente kommst, oder ist die Reihenfolge beim schreiben/lesen egal?
MasterOfWar
Lt. Commander
- Registriert
- Jan. 2009
- Beiträge
- 1.397
Mach doch einfach ein Array mit der Größe xy und bastelst dir eine Funktion, die bei jedem Einfügen prüft wie viel noch frei ist und wenn es voll ist erzeugst du ein größeres und speicherst um.
Was sinnvoll ist kommt wirklich auf das konkrete Problem an.
Wenn du den Index z.B. in einer For-Schleife immer um 1 hochzählst, dann kannst du recht einfache Datentypen nutzen, die den Wert hinten an die Collection anfügen. Zum Beispiel Vector:
Wenn der Index beim einfügen frei wählbar sein soll, dann wird das etwas komplizierter. Bei einer List hätte man da dann Probleme, weil man keine leeren Indizes mitten drin haben kann.
Da würde ich dann eher an eine Map denken.
Ob das nun für dein Problem gut ist oder nicht, steht auf einem anderen Blatt.
Codes sind frei nach schnauze getippt, also könnten Syntaxfehler drin sein.
P.S. Ein Vector ist ein dynamisch wachsendes Array. Du brauchst das Rad also nicht neu erfinden.
Wenn du den Index z.B. in einer For-Schleife immer um 1 hochzählst, dann kannst du recht einfache Datentypen nutzen, die den Wert hinten an die Collection anfügen. Zum Beispiel Vector:
Code:
Vector<Knoten> vec= new Vector<Knoten>();
vec.add(new Knoten());
Wenn der Index beim einfügen frei wählbar sein soll, dann wird das etwas komplizierter. Bei einer List hätte man da dann Probleme, weil man keine leeren Indizes mitten drin haben kann.
Da würde ich dann eher an eine Map denken.
Code:
int i=1;
HashMap<Integer, Knoten> map= new HashMap<Integer, Knoten>();
map.put(i,new Knoten());
Ob das nun für dein Problem gut ist oder nicht, steht auf einem anderen Blatt.
Codes sind frei nach schnauze getippt, also könnten Syntaxfehler drin sein.
P.S. Ein Vector ist ein dynamisch wachsendes Array. Du brauchst das Rad also nicht neu erfinden.
Zuletzt bearbeitet:
Ähnliche Themen
- Antworten
- 5
- Aufrufe
- 557
- Antworten
- 16
- Aufrufe
- 1.758
- Antworten
- 2
- Aufrufe
- 1.369