这是我从文本文件中读取文本的Java代码
import java.io.BufferedReader;
import java.io.FileReader;
import java.io.IOException;
public class checking {
public static void main(String[] args) throws IOException {
// Create a BufferedReader from a FileReader.
BufferedReader reader = new BufferedReader(new FileReader("pw.txt"));
// Loop over lines in the file and print them.
while (true) {
String line = reader.readLine();
if (line == null) {
break;
}
System.out.println(line); // The output is abc
if(line=="abc"){
System.out.println("true");
} else {
System.out.println("false"); //However it show false...
}
}
// Close the BufferedReader.
reader.close();
}
}
在pw.txt里面,只有一行,其中唯一的文字是abc。
我做了一个if语句来检查该行是否等于“abc”但是输出是假的......我不太明白。
我犯了什么愚蠢的错误吗?
答案 0 :(得分:1)
这是java初学者犯的巨大错误请参考http://www.javatpoint.com/string-comparison-in-java网站,了解java中的==和.equals()之间的区别
答案 1 :(得分:0)
更改比较2个字符串的方式:
if (line.equals("abc")) {
答案 2 :(得分:0)
使用line.equals("abc")
代替line=="abc"