Java - 从double数组中获取变量名

时间:2016-04-14 10:35:48

标签: java arrays

我有一个类型为double的Java数组,其变量名用于存储值,如下所示:

double [] countArray = {teaCount, hotMealCount, drinkWaterCount, phoneCallCount};

我希望用它的索引来打印变量的名称。

e.g。如果我请求countArray[0],则会返回teaCount而不是存储的双倍。

4 个答案:

答案 0 :(得分:4)

如果您需要存储这些

所需的名称
String[] countArray = {"teaCount", "hotMealCount", "drinkWaterCount", "phoneCallCount"};

虽然您很可能想要Map<String, Double>,例如

Map<String, Double> map = new LinkedHashMap<>();
map.put("teaCount", teaCount);
map.put("hotMealCount", hotMealCount);
map.put("drinkWaterCount", drinkWaterCount);
map.put("phoneCallCount", phoneCallCount);

它存储名称和值。

答案 1 :(得分:3)

你不能按照你想要的方式去做,但Map可以成为你的解决方案:

Map<String, Double> count = new HashMap<String, Double>();
count.put("teaCount", 1.5);
count.put("hotMealCount", 2.5);
// etc

count.get("teaCount"); // 1.5

答案 2 :(得分:2)

使用此方法无法实现您的目标。解决方案是使用Map<String, Double>将名称存储为密钥,将计数存储为Map中的值。

实际上,变量名称是临时的,您以后无法访问该名称。如果向数组中添加内容,则不会按名称将变量添加到数组中,而是添加值位置。

答案 3 :(得分:0)

你是存储字符串,而不是数组中的双重值。

如果要打印索引的值,只需使用:

的System.out.println(countArray [0]);

这将打印teaCount。

希望它有效。