[英]Java fill 2d array with 1d arrays
填充以下数组的最好方法是什么:
从主要:
String[][] data = new String[x][3];
for(int a = 0; a < x; a++){
data[a] = someFunction();
}
我正在使用的功能..:
public String[] someFunction(){
String[] out = new String[3];
return out;
}
有可能做这样的事情吗? 还是我必须用for循环填充它?
有了这段代码,出现错误“非静态方法someFunction()不能从静态内容中引用---“(netbeans)在线data[a] = someFunction();
您必须指定数组包含多少行。
String[][] data = new String[n][];
for(int i = 0; i < data.length; i++){
data[i] = someFunction();
}
注意someFunction
可以返回不同长度的数组。
当然, someFunction
返回一个空引用数组,因此您仍然必须在某个循环中初始化该数组的String
。
我只是注意到您遇到的错误。 将您的someFunction
更改为静态。
通过添加“静态”来更改someFunction()。
您还应该考虑将ArrayList用于此类任务,这些任务是动态的并且是为您的目的设计的(我想)。
public static void main(String[] args){
int x = 3;
String[][] data = new String[x][3];
for(int a = 0; a < x; a++){
data[a] = someFunction();
}
}
public static String[] someFunction(){
String[] out = new String[3];
return out;
}
蒂姆的问候
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.