假定一个文本文件中包含未定个数的分数,分数用空格隔开,用户输入文件名,然后从文件中读入分数,并求和Java
时间: 2024-02-29 15:53:02 浏览: 62
好的,针对您的问题,可以使用Java中的Scanner类来读取文件中的分数,并使用循环来计算分数总和。以下是示例代码:
```java
import java.io.File;
import java.io.FileNotFoundException;
import java.util.Scanner;
public class SumScoresFromFile {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
// 获取文件名
System.out.print("请输入文件名:");
String fileName = scanner.next();
try {
File file = new File(fileName);
Scanner fileScanner = new Scanner(file);
double sum = 0.0;
// 读取文件中的分数并计算总和
while (fileScanner.hasNext()) {
double score = Double.parseDouble(fileScanner.next());
sum += score;
}
System.out.println("总分:" + sum);
fileScanner.close();
} catch (FileNotFoundException e) {
System.out.println("文件不存在!");
}
scanner.close();
}
}
```
在上面的代码中,我们首先使用Scanner类从控制台获取文件名。然后,我们使用try-catch语句来打开文件并创建一个Scanner对象以读取文件中的内容。在while循环中,我们使用hasNext()方法来检查文件中是否还有下一个分数,如果有,我们使用next()方法获取下一个分数并将其转换为double类型,然后将其加入到总和中。最后,我们打印出总分。如果文件不存在,则会捕获FileNotFoundException异常并打印一条错误消息。
阅读全文