gpt4 book ai didi

java - 将文本文件中的某些整数读入数组列表

转载 作者:行者123 更新时间:2023-11-30 07:43:49 25 4
gpt4 key购买 nike

我必须读取文本文件中的两组整数。第一个是学生可以获得的学分,然后下一个整数是测试的字母成绩。我可以将整数读入 ArrayList,但问题是我想首先读取它们拥有的信用量,然后选择将它们添加到哪个 ArrayList(低于一定信用量或超过一定信用量)。我不想增加学分,只想增加他们获得的成绩。我的文本文件中有 25 行整数,首先是学分金额,然后是空格,然后是成绩。我只需要记录成绩,而不是学分金额。到目前为止,我的代码如下所示:

public static void main(String[] args) throws FileNotFoundException 
{
try
{
ArrayList <Integer> over15credits = new ArrayList<>();
ArrayList <Integer> under15credits = new ArrayList<>();
FileReader myReader = new FileReader("geomClass.txt");
Scanner fileIn = new Scanner(myReader);

while(fileIn.hasNextInt())
{
if(fileIn.nextInt() >= 15)
{
over15credits.add(fileIn.nextInt());

}
else
{
under15credits.add(fileIn.nextInt());
}
System.out.println(over15credits);
System.out.println(under15credits);
}
}
catch(FileNotFoundException e)
{
System.out.println("!!FILE NOT FOUND!!");
}
}

最佳答案

当您执行 fileIn.nextInt() 时,它会读取并使用该数字,以便当您再次调用 fileIn.nextInt() 时,它将读取此后的数字。

您很可能想使用变量,以便可以使用刚刚读取的数字。

    int num = fileIn.nextInt();
if (num >= 15)
over15credits.add(num);
else
under15credits.add(num);

您想要使用刚刚读取的相同号码,而不是其他号码。

仅供引用,你也可以这样写。

    int num = fileIn.nextInt();
(num >= 15 ? over15credits : under15credits).add(num);

关于java - 将文本文件中的某些整数读入数组列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34234416/

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