我目前正在重新处理今年初设定的任务,有一件事情我真的没有掌握概念,那就是循环和读/写文件。手边的任务是从文本文件中读取一堆薪水,将它们加起来并计算平均值,然后在控制台中打印出结果。
到目前为止,我有这个:
import java.util.*;
import java.io.*;
public class loopingSalaryTotal {
public static void main (String[] args) throws IOException {
int [] salaries = new int[100];
Scanner scan = new Scanner("salaries1.txt");
int index = 0;
while (scan.hasNext()) {
salaries[index]=(scan.nextInt());
index++;
}
for (int i = 0; i < index; i++) {
System.out.println(salaries[i]);
}
scan.close();
}
}
它会抛出以下错误信息:
Exception in thread "main" java.util.InputMismatchException
at java.util.Scanner.throwFor(Unknown Source)
at java.util.Scanner.next(Unknown Source)
at java.util.Scanner.nextInt(Unknown Source)
at java.util.Scanner.nextInt(Unknown Source)
at loopingSalaryTotal.main(loopingSalaryTotal.java:18)
此外,我完全理解我还远远无法将数字相加然后计算平均值,但如果有人能在正确的方向上指点我,那将不胜感激。
以下是input.txt
的一些示例输入:
17283
12312
12312
12314
43242
64363
12364
74534