Uzyskaj zmienną według nazwy z ciągu
Przykładowy kod:
int width = 5;
int area = 8;
int potato = 2;
int stackOverflow = -4;
Teraz powiedz, że chcę, aby użytkownik wprowadził ciąg znaków:
String input = new Scanner(System.in).nextLine();
Następnie powiedz dane wejściowe użytkownikapotato
. Jak odzyskałbym nazwaną zmiennąpotato
i robić z tym rzeczy? Coś takiego:
System.getVariable(input); //which will be 2
System.getVariable("stackOverflow"); //should be -4
Sprawdziłem niektóre rzeczy i niewiele znalazłem; Znalazłem odniesienie do czegoś, co nazywa się „API Reflection”, ale wydaje się to zbyt skomplikowane dla tego prostego zadania.
Czy jest jakiś sposób, aby to zrobić, a jeśli tak, to co to jest? Jeśli „Refleksja” rzeczywiście działa, a jeśli jest to jedyny sposób, to w jaki sposób mógłbym to zrobić? Strona z samouczkiem zawiera wiele wewnętrznych rzeczy, których nie mogę zrozumieć.
EDYTOWAĆ: Muszę zachowaćString
s w zmiennych dotyczących tego, co robię. (Nie mogę użyćMap
)