String[][] aS= new String[16][3];
String[] s0 ={"FIELD0", "FIELD1", "FIELD2"};
String[] s1 ={"FIELD0", "FIELD1", "FIELD2"};
String[] s2 ={"FIELD0", "FIELD1", "FIELD2"}; ...
String[] s15 ={"FIELD0", "FIELD1", "FIELD2"};
for(int i=0;i<aS.length;i++)
{
for(int j=0;j<3;j++)
{
//error!
aS[i][j]= s+"i"+[j]; //s0[0],s0[1]...s15[3]
}
}
我熟悉多维数组,我只是不知道如何修复这部分:“s +”i“+ [j];”
编辑:[错误] 令牌“+”上的语法错误,此令牌后面的表达式
答案 0 :(得分:1)
你不能用Java(在大多数编程语言中)这样做,它不支持动态命名。
如果您想使用s0
,s1
或任何其他数组,您应该编写它,例如:
aS[i][j]= s0[j];
答案 1 :(得分:1)
首先,在Java中,您无法创建变量的动态名称。所以
aS[i][j]= s+"i"+[j]; //s0[0],s0[1]...s15[3]
不正确
String[][] aS= new String[16][3];
这意味着您可以拥有16个1D String数组,每个数组大小为3,即每个数组中有3个字符串。
for(int i=0;i<aS.length;i++)
{
aS[i]= yourArray //s0[0],s0[1]...s15[3]
}
此处yourArray
应为String [],其大小为3,类似于您的S0 - S15。
或者你可以做
for(int i=0;i<aS.length;i++)
{
for(int j=0;j<3;j++)
{
aS[i][j]= "FIELD" + j;
}
}
答案 2 :(得分:1)
如果您想初始化 多维数组,可以这样做:
String[][] aS = { {"FIELD0", "FIELD1", "FIELD2"},
{"FIELD0", "FIELD1", "FIELD2"},
{"FIELD0", "FIELD1", "FIELD2"},
...
{"FIELD0", "FIELD1", "FIELD2"} };