给下列代码加上注释import java.io.*; import java.util.*; public class Reversef { public static void main(String args[]) { File file = new File("D:\\inf1.txt"); Scanner sc = null; double sum = 0; int count = 0; try { sc = new Scanner(file); sc.useDelimiter("[^0123456789.]+"); while (sc.hasNext()) { try { double price = sc.nextDouble(); count++; sum = sum + price; System.out.println(price); } catch (InputMismatchException exp) { String t = sc.next(); } } System.out.println("平均价格:" + sum / count); } catch (Exception exp) { System.out.println(exp); } } }
时间: 2023-06-27 14:05:06 浏览: 102
// 导入 Java IO 和 Java Util 包
import java.io.*;
import java.util.*;
// 定义类 Reversef
public class Reversef {
// 定义 main 方法
public static void main(String args[]) {
// 创建一个 File 对象,指定读入的文件路径
File file = new File("D:\\inf1.txt");
// 创建 Scanner 对象
Scanner sc = null;
// 定义 sum 和 count 变量
double sum = 0;
int count = 0;
try {
// 初始化 Scanner 对象
sc = new Scanner(file);
// 设置分隔符,使 Scanner 只读取数字
sc.useDelimiter("[^0123456789.]+");
// 循环读取文件中的数据
while (sc.hasNext()) {
try {
// 读取下一个 double 类型的数值
double price = sc.nextDouble();
// 计算 sum 和 count
count++;
sum = sum + price;
// 打印当前读取的数值
System.out.println(price);
}
catch (InputMismatchException exp) {
// 如果读取失败,跳过当前数据
String t = sc.next();
}
}
// 计算平均数并打印输出
System.out.println("平均价格:" + sum / count);
}
catch (Exception exp) {
// 捕获可能出现的异常并打印输出
System.out.println(exp);
}
}
}
阅读全文