如何从二维数组中提取第一列?我正在用这样的方法初始化我的数组
//Initialise the array with the values from the file
public static float[][] data(float[][] data, Scanner scan){
int count = 0;
for (int i=0;i<data.length;i++){
for (int j=0;j<data[0].length;j++){
count++;
if(count<data.length*data[0].length){
for(int k=0;k<2; k++){
data[i][j] = (float) IOUtil.skipToDouble(scan);
System.out.print(data[i][j] + " ");
}
System.out.println();
}
}
}
return data;
}
这是我的测试文件的内容。(请记住文件可以是任意长度)
13.97 2.2
12.05 1.9
9.99 1.5
8.0 1.3
6.0 0.9
4.0 0.6
2.0 0.3
0.0 0.0
-2.0 -0.3
-4.0 -0.6
-6.02 -0.9
-8.0 -1.3
-9.99 -1.6
-12.03 -1.9
-13.98 -2.2
在终端上,但问题是当我尝试调用左列时,我得到的是右列。我不确定这是否是因为右侧的值是唯一被存储的值。
//should print x but actually prints y
public static void printX(float[][] data){
for (int i=0;i<data.length;i++){
for (int j=0;j<data[0].length;j++){
System.out.println(data[i][j]);
}
}
}
哪个输出
2.2
1.9
1.5
1.3
0.9
0.6
0.3
0.0
-0.3
-0.6
-0.9
-1.3
-1.6
-1.9
-2.2
0.0
谁能澄清我如何才能最好地从二维数组中获取左侧列上的数据?或者如果有其他方法可以实现这种事情?