You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
48 lines
1.4 KiB
48 lines
1.4 KiB
import java.io.*;
|
|
|
|
/*原始代码
|
|
BufferedReader br=new BufferedReader(new FileReader("score.txt"))
|
|
String line;
|
|
while((line=br.readLine())!=null){
|
|
sum += Integer.parseInt(line)
|
|
}
|
|
br.close()
|
|
*/
|
|
|
|
|
|
//修改后的代码
|
|
public class score {
|
|
public static void main(String[] args){
|
|
//使用try()-with-resources确保文件自动关闭
|
|
try(BufferedReader br=new BufferedReader(new FileReader("score.txt"))){
|
|
double sum=0;
|
|
int count=0;
|
|
String line;
|
|
while((line=br.readLine())!=null){
|
|
try{
|
|
sum += Integer.parseInt(line);
|
|
count++;
|
|
} catch (NumberFormatException e) {
|
|
System.out.println("数字格式错误");
|
|
}
|
|
}
|
|
|
|
//计算平均数
|
|
if (count>0){
|
|
double average=sum/count;
|
|
System.out.println("平均分是"+average);
|
|
}
|
|
else{
|
|
System.out.println("计数不符合规范,没有平均数");
|
|
}
|
|
}
|
|
//最外层的catch
|
|
catch (FileNotFoundException e){
|
|
System.out.println("文件不存在");
|
|
}
|
|
//同样也是最外层的catch
|
|
catch (IOException e){
|
|
System.out.println("读取文件发生错误");
|
|
}
|
|
}
|
|
}
|