有没有办法将变量名称添加到变量中?例如int number = 1;
,String tree;
并且知道我想将数字添加到字符串名称中,这样它就会变成 tree1
问问题
5430 次
2 回答
1
你不,基本上:
- 如果您想要一组由连续数字索引的值,请使用 a
List
或数组。 - 如果您想要一个由其他东西(例如字符串)索引的值的集合,请使用
Map
.
每当您发现自己想要 等的变量名称时foo1
,请foo2
考虑改用集合。这几乎总是一种更好的方法。
您可以使用反射 ( ) 按名称获取字段(但不能获取局部变量),Class.getDeclaredField
但这很少是一种有用的方法。
于 2013-08-14T13:52:46.887 回答
0
你不能。
int x = 1;
String tree + x = "tree1" // not valid
但是您可以在执行 concat 操作后使用列表或映射并填充项目或键。
例子:
final List<String> values = new ArrayList<String>();
for(int i = 1; i <= 5; i++){
values.add("tree" + i);
}
final Map<String, String> map = new HashMap<String, String>();
String[] trees = {"Apple Tree", "Banana Tree", "Grape Tree", "Orange Tree", "Binary Tree"};
for(int i = 1; i <= 5; i++){
map.put("tree" + i, trees[i - 1]);
}
于 2013-08-14T13:54:23.127 回答