Variable mit String ""erhalten""
lima-city → Forum → Programmiersprachen → Java
abfragen
ahnung
anwendungsfall
auslese
code
essen
frage
funktioniert super danke
glaskugel
gut passen
interpretieren
kleines beispiel
letzten punkte
mache
machen
neige
pudding
setzen
string
tun
-
Hallo
ich bin Heute auf ein Problem gestoßen, und zwar bei meinem Code will ich ,dass ich eine Variable mit dem
namen x mit einem String abfrage.
z.B.
int x = 99;
public static void Irgendeinname(String s){
hier drinne soll sowas wie das:
Variable.getVariable(variable.valueOf(s) = 10;
passieren.
Weiss jemand wie man das macht?
mfg swissmcs
Danke :D
-
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage
-
Hallo,
ich habe mir deinen Beitrag jetzt mehrfach durchgelsen und keine Ahnung was für eine Frage du hast.
Das ist so verständlich als wenn ich fragen würde »Pudding und Tomatensoße, wie?«
Die Frage könnte man nun so interpretieren:
– Keine Ahnung was die Frage ist…
– Wie gut passen Tomatensoße und Pudding zusammen?
– Wie mache ich Pudding?
– Wie mache ich Tomatensoße?
– Wie mache ich Pudding und Tomatensoße?
– Essen solltest du besser sein lassen, du weißt offensichlich nicht wie man es macht!!!
– Ganz egal was es heißen soll stell die Frage so das man sie versteht!!!
Also, du siehst die Frage ist nicht verständlich formuliert und ich neige dazu deine Frage wie einen der beiden letzten Punkte oder den ersten zu interpretieren deshalb:
FRAGE DOCH BITTE EINFACH DANACH WAS DU WISSEN WILLST, GEBE EIN KLEINES BEISPIEL UND ERKLÄRE WONACH DU BEREITS GESUCHT HAST, ANSCHLIEẞEND HILFT DIR GERNE JEMAND.
So ich gebe dir jetzt trotzdem noch eine Hilfe indem ich die Gegenfrage stelle und mal meine Glaskugel bemühe um zu raten was du machen willst.
Willst du einen Integer in einem String einfügen? – Das ginge ganz einfach so:
int x = 10; String y = ""+x; // Oder: String y = Integer.toString(x);
Oder willst du eine Zahl, die in einem String steht in einem Integer schreiben? – Das wäre auch sehr einfach:
String x = "10"; int y = Integer.valueOf(x); // Oder das ist aber nicht so schnell, wenn es mehrfach vorkommt, // wenn es einmalig ist, dann ist es schneller, das hat was mit der // Speicherverwaltung von Java zu tun und ist für deinen // Anwendungsfall vermutlich egal Integer.parseInt(x);
Oder willst du einen Vergleich zwischen einem Integer und einem String durchführen?
Dann müsstest du eine der beiden Umformungen benutzen und das ganze dann wie üblich vergleichen.
Mit freundlichen Grüßen
Beitrag zuletzt geändert: 20.7.2013 21:28:54 von nemoinho -
Ich nehme an er meint das hier:
long a = 10; long b = 20; string varToAdd = "a"; long c = b + valueOfVar(varToAdd); // das folgende sollte dann true sein c == 30
Aber selbst wenn es gehn sollte, ist das ganz schlechter Stil und du solltest es lieber lassen. Afaik gibt es eine solche Möglichkeit in Java nicht.
Möglicheiten solches Verhalten zu bekommen wären zum Beispiel HashMap mit String als Schlüssel. -
nenene ganz anders
Ich will eine bestimmte Variable ändern, also wenn ich zb 3 Variabeln habe
private static int x; private static int y; private static int z;
Dann will ich das ich den Namen der Variable mit einem String abfragen kann:
String s = "";
Wenn s jetzt "x" ist, soll es die Variable x ändern, wenn s "y" ist soll es die Variable y ändern usw.
ABER
Ich will nicht immer abfragen ob:
if(s == "x"){ x = x + 123123; } else if(s == "y"){ usw. }
Ist es so einigermaßen verständlich ausgedrückt?
Beitrag zuletzt geändert: 21.7.2013 18:37:24 von swissminecraftserver -
Jop, aber das ist trotzdem genau der Fall und sollte mit einer HashMap gelöst werden:
String s = "x"; HashMap<String,Integer> integers = new HashMap<String,Integer>(); integers.put(s, 3); // zum setzen int x = integers.get(s); // zum auslesen
Bei Feldern kannst du auch Reflection nutzen, aber das ist halt ziemlich langsam. -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage