有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

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) 个答案

  1. # 1 楼答案

    因为如果文件有两行,而第二行不是单词,“isWord”就会被指定一个“false”值。当您到达return语句时,“false”是最后一个赋值,这就是为什么如果第二行中没有单词,您会从方法中得到一个“false”值