java - 如何在 java 文本文件中找到最大和最小的数字?
问题描述
我的教授让我编写一个程序来分析文本文件并打印出该文件的最小值和最大值。我写了以下代码:
import java.util.Scanner;
import java.io.File;
public class findMaxAndMin {
public static void main(String[] args) {
File myFile = new File("NumberFile.txt");
try {
Scanner doubleScanner = new Scanner(myFile);
while (doubleScanner.hasNextDouble()) {
double currentDouble = doubleScanner.nextDouble();
System.out.println(currentDouble);
double biggestNumber = doubleScanner.nextDouble();
double smallestNumber = doubleScanner.nextDouble();
if (currentDouble > biggestNumber) {
currentDouble = biggestNumber;
}
if (currentDouble < smallestNumber) {
currentDouble = smallestNumber;
}
System.out.println("The largest number is " + biggestNumber);
System.out.println("the smallest number is " + smallestNumber);
}
} catch (Exception l) {
System.err.println(l.getMessage());
}
}
}
我最终在我的 Git 命令行中得到了这个明显不准确、混乱的输出:
$ java findMaxAndMin
100.0
The largest number is 200.0
the smallest number is 20.0
2.0
The largest number is 550.0
the smallest number is 7000.0
文本文件具有以下值:
100
200
20
2
550
7000
所以,程序应该打印出两条语句,声明“最小的数是 2”和“最大的数是 7000”。如何轻松更正此代码?我不是一个有经验的程序员。及时回复将不胜感激,因为这项任务是在午夜完成的。
解决方案
我建议大声阅读代码。这是一种基本的调试方法,称为Rubber Duck Debugging。
大学是关于学习的。如果我发现了问题并将其展示给您,我实际上会损害您的学习。(成绩好固然好,但获得成绩更好!)
推荐阅读
- r - R将循环中实现的字符串操作重写为R方式
- cakephp - CakePHP 将数据保存到多个表
- java - 如何使用 Hibernate 条件实现此多项选择和查询?
- java - PrintWriter 中的 java HttpsURLConnection setRequestProperty 等效项
- javascript - 在 html 中连接 Js
- python - PySide2:QOpenGLContext'对象没有属性'functions'
- python - 我在 .csv 文件的特定列中有 MongoDB 格式的字符串行 如何将其转换为数据框?
- java - JavaCC 中 JAVA_UNICODE_ESCAPE 的作用是什么?
- python - 修复 IndexError:列出超出范围的问题
- java - 在 Spring Boot 和 Thymeleaf 中解析模板名称时出错