java - 如何从文本文件中读取,从整数中分割字符串,然后将整数传递到数组列表中?

标签 java arraylist java.util.scanner

所以我对编程非常陌生,并且一直在尝试一些练习以更好地学习 java。

现在,我有一个程序可以从文本文件中读取考试分数(仅包含整数),然后将其传递到数组列表中。

类似于:

exammarks.txt file contains:
23 45 67 76 12


Scanner fileScan = new Scanner(new File("exammarks.txt");
ArrayList<Integer> marksArray = new ArrayList<Integer>();
while (fileScan.hasNextInt())
{
    marksArray.add(fileScan.nextInt());
}

Print out: [23, 45, 67, 76, 12]

但是我想修改它,以便 exammarks.txt 文件包含:

name grade
NAME 56
NAME2 67
NAME3 43

程序读取此文本文件,忽略第一行,然后将字符串与整数分开,然后将整数添加到 ArrayList 中。

任何帮助将不胜感激

最佳答案

您也可以使用您的代码片段并将其扩展以读取第二个 .txt 文件。

您的 while 循环现在必须循环

fileScan.nextLine(); // skip first line
    while (fileScan.hasNextLine())
    {
        marksArray.add(Integer.valueOf(fileScan.nextLine().split(" ")[1]));
    }

所以这里发生的事情是,首先获得 nextLine,将其按 "" 分割,然后获得 Integer 所在的第二部分。但由于 nextLine 返回一个被分成两个字符串的字符串,因此您必须将其转换为 Integer 或使用静态方法 Integer.valueOf

关于java - 如何从文本文件中读取,从整数中分割字符串,然后将整数传递到数组列表中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41018918/

相关文章:

java - 未找到提供程序 com.sun.xml.rpc.client.ServiceFactoryImpl

java - Restful API codeigniter - JAVA 问题

java - 需要一些关于 java 中扫描仪生成的字符串中空格的指导

java - 为什么使用 Scanner.next() 会导致这种奇怪的 System.out.println() 行为?

java - nextLine() 如何丢弃此代码中的输入?

java - XSD - 验证该元素引用 XML 文件中的其他元素

java - 螺旋形地画线

c++ - 存储数组的字符串

java - 为什么 toString() 方法在 Java 中的 Array 和 ArrayList 对象之间工作不同

java - 制作可添加到非索引位置的列表的最佳方法是什么