如果声明评估不正确

时间:2016-04-09 23:47:13

标签: java android android-studio

我有以下代码从文件中读取一行,如果它等于"true",则将布尔值设置为true,如果不是,则将布尔值设置为false }:

BufferedReader reader = new BufferedReader(new FileReader(optionsFile));
stringFromFile = reader.readLine();
System.out.println("SFX plain text: " + stringFromFile);
if (stringFromFile == "true") {
    SFX = true;
}
else {
    SFX = false;
}
System.out.println("SFX: " + SFX);

但是,执行时,日志会出现以下内容(我已经排除了软件包名称,因为它上面有个人详细信息):

04-09 23:35:39.980 9686-9686/<PACKAGE NAME> I/System.out: SFX plain text: true
04-09 23:35:39.980 9686-9686/<PACKAGE NAME> I/System.out: SFX: false

显然,if语句错误地评估了字符串,但我尝试了很多东西,而且我一直无法修复它。有谁知道什么是错的,或者如何修复它?任何帮助将不胜感激。

P.S:如果相关,则使用以下代码编写文本文件:

writer = new BufferedWriter(new FileWriter(optionsFile));
if (SFX) {
    writer.write("true");
    System.out.println("SFX: true");
}
else {
    writer.write("false");
    System.out.println("SFX: false");
}
writer.newLine();
writer.close();

0 个答案:

没有答案