使用字符串数组中的条目作为创建新数组Java的名称

时间:2014-12-23 09:22:47

标签: java arrays

我的问题是,如果我有一个类似

的数组
String [] varNames=new String[numOfVariables];
for(int i=0;i<numOfVariables;i++){
        varNames[i]=scan.next();

    }

我想创建一个新的整数数组,其名称为varNames [1]。

例如,如果在varNames [1]的地方,&#34; fish&#34;存储然后我想将varNames [1]的名称分配给我将要制作的新整数数组。

喜欢

int [] verNames[i]=new int[20];

但我不知道我该怎么做......任何想法都会非常感激。 感谢。

5 个答案:

答案 0 :(得分:6)

您正在寻找Map<String,T> - 其中T是您的变量类型。

这是&#34;方法,因为java不是dynamic binding语言,所有变量名称(和类型)必须在编译时才知道。

答案 1 :(得分:1)

Java不支持动态变量,它们必须在源代码中声明(严格类型化)。

您可以使用地图来获得与您尝试的内容接近的内容,请访问Map API。

答案 2 :(得分:1)

int [] verNames[i]=new int[20];

没有。那是不可能的。变量名称不应该是动态的。它们是严格打字的。

答案 3 :(得分:1)

您无法动态提供变量名称。此外,您甚至需要在编译程序之前声明变量名称。

但是如果你想要,你可以这样做,让多个变量存储在集合中。

Map<String, Integer> map = new HashMap<String, Integer>();
for(int i = 0; i < 2; i++)
{
  map.put("n1", i);
}

答案 4 :(得分:1)

从你的问题:

int [] verNames[i]=new int[20];

这是不可能的。您无法在运行时创建变量。

相关问题