Использование значения переменной вместо ее имени для объявления новой переменной - PullRequest
1 голос
/ 12 января 2011

Предположим, у меня есть переменная в Java

String test=new String();  

Теперь я хочу объявить новую переменную с именем, равным значению переменной 'test'.

Ответы [ 3 ]

4 голосов
/ 12 января 2011

Вы не можете сделать это в Java, вместо этого используйте java.util.Map.

Например:

Map<String, Object> map = new HashMap<String, Object>();
map.put("key1", "key2");
map.put((String) map.get("key1"), "whatever");
2 голосов
/ 12 января 2011

Насколько я знаю, Java не позволяет добавлять переменные в отражении, однако вы можете использовать Map<String,Object> для достижения этого.

String test = new String();
Map<String,Object> map = new HashMap<String, Object>();
Object myNewObject = new Object();
map.put(test,myNewObject);

теперь вы ищите новые объекты по:

map.get(test);

amit

2 голосов
/ 12 января 2011

Это невозможно, потому что имя исправлено во время компиляции!

...