打开文件并阅读java文件
问题描述:
这是我第一次发布。我至少在一周内一直在寻找我的问题的答案。我有一本适合学校的书,它应该告诉我我所知道的一切。但对于这个特定的问题,我找不到答案。我正在使用Dr.Java上学,每次按照我的书籍说明打开和阅读文件,我都会收到一些错误信息。我已经通过这本书编写了确切的方式来完成此操作,但它仍然显示错误,我不确定问题所在。我将发布我拥有的所有代码,我不需要所有的帮助,只需要其中的一部分就可以了解其余部分。任何帮助将不胜感激。打开文件并阅读java文件
import java.io.*;
import java.util.Scanner;
public class Maximum
{
public static void main (String[]args) throws IOException
{
Scanner keyboard = new Scanner(System.in);
String filename;
System.out.println("Please enter the file name.");
filename = keyboard.nextLine();
int maximum = ReadAndFindMax(filename);
System.out.println("The maximum number in the file is: " + maximum);
}
public static int ReadAndFindMax(String filename) throws IOException
{
File file = new File(filename);
Scanner inputFile = new Scanner(file);
int number, max;
while (inputFile.hasNext())
{
number = inputFile.nextInt();
if (number > max)
number = max;
}
inputFile.close();
return max;
}
}
答
你需要初始化你int
值即max
,所以真正使用它的原因是什么,如果inputFile.hasNext()
回报false
再想想前值初始化值0
宜ReadAndFindMax
方法return
。
int number, max=0;
另外,我建议你严格遵循Java命名标准,这样的代码可以很容易地读取你的命名开始用大写的方法名。
+0
'number'不必被初始化,因为它的值在被比较之前被设置。 –
你得到了什么错误? –
*它仍然显示错误,我不确定问题是什么*:如果我们能够读取错误消息,那么知道问题是什么会更容易。 –
您需要在将其与数字进行比较之前初始化max。附注:if后面的行被反转。 – 2017-04-08 15:30:36