我创建了这个类:
class File {
public String path;
public int numberOfLines = 0;
public String[] fileContent;
public File (String file_path) {
path = file_path;
}
public BufferedReader openFile () throws IOException {
FileReader ReadFile = new FileReader(path);
BufferedReader ReadFilePerLine = new BufferedReader(ReadFile);
}
public int countLines () {
String line;
while((line = ReadFilePerLine.readLine()) != null){
numberOfLines++;
}
return numberOfLines;
}
public String[] readLines () {
String[] fileContent = new String[numberOfLines];
for (int i=0; i < numberOfLines; i++){
fileContent[i] = ReadFilePerLine.readLine();
}
}
}
如何让countLines()
方法知道ReadFilePerLine
的存在以及如何让他使用它? (numberOfLines
变量相同)
答案 0 :(得分:1)
BufferedReader ReadFilePerLine = new BufferedReader(ReadFile);
这是openFile()
方法的局部变量,因此仅存在于该方法的范围内。
如果您希望其他方法可以访问它,请将其设为实例变量(即将BufferedReader ReadFilePerLine;
移到方法之外)。
答案 1 :(得分:0)
你应该使用方法参数,如下所示:
public int countLines (BufferedReader in) {
String line;
while((line = in.readLine()) != null){
numberOfLines++;
}
return numberOfLines;
}