如图片所示,我判断s不为空以后,依然输出为空。读取文本的代码是有什么问题吗?

public static ArrayList inputText(String sourceFileName){
ArrayList lines = new ArrayList<>();
BufferedReader br = null;

    try {
        br = new BufferedReader(new FileReader(sourceFileName));
        String strLine = null;
        while ((strLine = br.readLine()) != null){
            strLine = strLine.trim();
            lines.add(strLine);
        }
    } catch (IOException e) {
        e.printStackTrace();
    } finally {
        if (br != null){
            try {
                br.close();
            } catch (IOException e) {
                e.printStackTrace();
            }
        }
    }
    return lines;
}


    @org.junit.Test
public void test3() {
    ArrayList<String> list =
            TextDispose.inputText("file1.txt");
    for (String s : list){
        if (s != ""){
            System.out.println("--"+s+"--");
        }
    }
}

看一下你的文本内是否有数据,这段代码在我这运行没问题

要重新添加上去或者修改文件

StringUtils.isNotBlank判断字符串非空

你确定你写的文件能够被编译器找到么 如果在src目录下文件名的前面要加上反斜杠
其余的地方在我的编译器上可以运行

了解一下equal和==的区别吧,我觉得应该是这个问题

要用 equals ,字符串比较不能用等号,

试过 s ! = null 吗?图片说明