![](/img/trans.png)
[英]How do i initialize a 2D Array with m(rows), n(cols) in java?
[英]How could I read Java Console Output into a 2d n*m double matrix/array
這是代碼:
import java.io.File;
import java.io.IOException;
import java.util.ArrayList;
import java.util.List;
import java.util.Scanner;
public class ReadContents {
public static void main(String[] args) throws IOException {
File file = new File("file1.txt");
List<float[]> list = new ArrayList<float[]>();
Scanner scanner = new Scanner(file).useDelimiter("\n");
while (scanner.hasNext()) {
String[] values = scanner.next().trim().split(" ");
float[] floats = new float[values.length];
for (int i = 0; i < values.length; i++) {
floats[i] = Float.parseFloat(values[i]);
}
list.add(floats);
}
float[][] values = new float[list.size()][];
for (int i = 0; i < list.size(); i++) {
values[i] = list.get(i);
for (int j = 0; j < values[i].length; j++) {
System.out.print(values[i][j] + " ");
}
System.out.println();
}
int row =values.length;
int col=values[0].length;
System.out.println(row);
System.out.println(col);
//******************************************************************************************************************
System.out.println();
double sum;
double avg=0;
for (int p = 0; p < col; p++){
sum=0;
for (int k = 0; k < row; k++){
sum = sum + values[k][p];
//avg=((double)sum / row);
}
avg=((double)sum / row);
System.out.print("average"+p+"=");
System.out.printf("%5.2f\n", avg);
}
它提供 output 作為 2d 矩陣中的文件內容,並在控制台屏幕上打印“values [] []”矩陣的每一列的平均值。現在我想打印包含先前計算的所有平均值的矩陣到單個 2d n * m 數組中。 請指導我。
首先,您不應該將結果轉儲到控制台。
相反,將結果存儲到變量中。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.