java为什么BufferedReader只读取第一行?
这是一种检查文件中某个单词的方法,但该方法仅返回第一行中的单词,如果检查第二行中的单词,则返回false
public static boolean isWord(String file,String word) throws FileNotFoundException,IOException {
boolean isWord=false;
BufferedReader read=new BufferedReader(new FileReader(file));
String content;
while((content=read.readLine()) != null) {
if(content.contains(word)) {
isWord=true;
} else {
isWord=false;
}
}
}
return isWord;
}
# 1 楼答案
因为如果文件有两行,而第二行不是单词,“isWord”就会被指定一个“false”值。当您到达return语句时,“false”是最后一个赋值,这就是为什么如果第二行中没有单词,您会从方法中得到一个“false”值