gpt4 book ai didi

java - 将行和列设置为数组

转载 作者:行者123 更新时间:2023-12-02 12:13:20 26 4
gpt4 key购买 nike

我的代码在计算列数时遇到问题。我必须从文本文件中读取有关我应该作为矩阵尺寸的信息,但我似乎遇到了该列的问题。第一个数字应该是矩阵中的行数。

输入文件内容:

3
8 5 -6 7
-19 5 17 32
3 9 2 54

下面是确定信息的代码:

import java.io.File;
import java.io.FileNotFoundException;
import java.util.ArrayList;
import java.util.Scanner;

public class Test {

public static void main(String[] args) throws FileNotFoundException {

File f = new File("testwork.txt");
Scanner in = new Scanner(f);
int numRows = in.nextInt();

ArrayList<Integer> columnCheck = new ArrayList<Integer>();

while (in.hasNextLine()) {
columnCheck.add(in.nextInt());
break;
}

int numColumns = columnCheck.size();

System.out.println(numRows, numColumns);
in.close();
}

}

我从这段代码中得到的输出是 3(行数)12(列数)。显然这是错误的,我知道问题是 while 循环不断重复以检查循环中有多少数字,但我不知道如何修复它。我应该对 while 循环进行哪些更改才能使程序只接受 4 列?

最佳答案

这就是你真正想要实现的目标

public static void main(String[] args) throws FileNotFoundException {
File f = new File("testwork.txt");
Scanner in = new Scanner(f);
int numRows = in.nextInt();

ArrayList<Integer> columnCheck = new ArrayList<Integer>();
int numColumns = 0;

while (in.hasNextLine()) {
Scanner s2 = new Scanner(in.nextLine());
numColumns++;

while (s2.hasNextInt()) {
columnCheck.add(s2.nextInt());
}
}

System.out.println(numRows, numColumns);
in.close();
}

关于java - 将行和列设置为数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46374135/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com