我试图获取用户输入的某个文本文件中的最大值。我也把它分成不同的方法。继承人是我到目前为止有:在java中输入文本文件中查找最大值
public static void FindMax(String file)throws IOException{
int maximum = 0;
Scanner fileScanner = new Scanner(new File(file)); {
int big = fileScanner.nextInt();
while (fileScanner.hasNextInt()) {
int num = fileScanner.nextInt();
if(num > big) {
maximum++;
System.out.println(num);;
}
}
}
}
public static void main(String[] args)throws IOException{
Scanner keyboard = new Scanner(System.in);
String file;
System.out.print("Enter file: ");
file = keyboard.nextLine();
FindMax(file);
}
输出打印文本文件中的所有内容,除了第一个值,而不是打印最大。例如,如果文本文件是:
1
2
3
4
5
它只打印2,3,4和5,我不知道我why.How可以得到最大值? Id感谢任何帮助/建议。提前致谢。
编辑:你们所有人都在说类似的解决方案,但是当我尝试它们时,它只是打印相同的输出。我很困惑。
有在你的代码中的逻辑错误。你想要做的是从文本和文件中读取一个数字,并比较它是否大于以前的最大数字。如果是,请更新最大值,然后检查下一个数字。在读完整个文件后,你应该打印最大变量的值 – amyn