在数组中具有相同索引的两个值

时间:2016-02-21 03:44:19

标签: java arrays string floating-point

我正在尝试将String和float分配给单个数组索引。例如 -

New England 98 
Tennessee 58.3

array[0] should store New England and the floating point number 98
array[1] should store Tennessee and the floating point number 58.3

等等。 我的问题是如何在Java中将String对象存储在数组中的相同索引处。我想将它们配对(键,值),然后将它存储到一个索引但我不知道如何这样做

如何将这两种数据类型分配到同一索引?

3 个答案:

答案 0 :(得分:3)

您可以定义一个名为A的类,它有两个这样的字段:

public class A{
    private String str;
    private float num;
}

所以你可以创建一个类型为A[]的数组,当你向它添加一个元素时,调用A的构造函数并保存它。

答案 1 :(得分:0)

根据您的需要,您可以使用HashMap。

 Map<String, float> myMap = new HashMap<>();

   // add your pair
   myMap.put("New England", 98);
   myMap.put("Tennessee", 58.3);
   myMap.put("etc", 99.99);

   // get value for Tennessee
   float val = (float)myMap.get("Tennessee");  //58.3

   //This will overide the value associated with the key
   myMap.put("Tennessee", 41.12);

   // get value for Tennessee
   float val2 = (float)myMap.get("Tennessee");  //41.12

如果有一天你有可能有一对以上的值,你肯定应该创建一个类。

答案 2 :(得分:0)

您可以创建一个具有两个属性的类(String str和float f)。然后,您需要创建上面类的对象数组。因此,您可以将String和float分配给singlw数组索引。