Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/310.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 从文件BufferedReader中获取文本,输出看起来正常,但不';t等于“;“真的”;或;假;(文件中有什么内容)_Java_Bufferedreader_Filereader - Fatal编程技术网

Java 从文件BufferedReader中获取文本,输出看起来正常,但不';t等于“;“真的”;或;假;(文件中有什么内容)

Java 从文件BufferedReader中获取文本,输出看起来正常,但不';t等于“;“真的”;或;假;(文件中有什么内容),java,bufferedreader,filereader,Java,Bufferedreader,Filereader,我正在尝试使用以下代码从文件(用作设置文件,true或false值)获取信息: File information = new File(aPath + "/plugins/ArenaCraft/info.acs"); ArrayList<String> info = new ArrayList<String>(); BufferedReader br = new BufferedReader(new FileReader(information)); String li

我正在尝试使用以下代码从文件(用作设置文件,true或false值)获取信息:

File information = new File(aPath + "/plugins/ArenaCraft/info.acs");

ArrayList<String> info = new ArrayList<String>();
BufferedReader br = new BufferedReader(new FileReader(information));
String line;
while((line = br.readLine()) != null) {
     String[] sLine = line.split(":");
     if(sLine[1] == "true"){
         info.add("true");
     }
     if(sLine[1] == "false"){
         info.add("false");
     }
     if(sLine[1] == null){
         System.err.println("[ArenaCraft]  sLine[1] is NULL.");
     }
     if(sLine[1] != "true" && sLine[1] != "false" && sLine[1] != null){
         System.err.println("[ArenaCraft]  sLine[1] is not NULL, but it's not \"true\" or \"false\".");
         System.err.println("[ArenaCraft]  sLine[1] is: " + sLine[1]);
     }
}

br.close();
return info;
信息。然后它输出,确切地说

[ArenaCraft]  sLine[1] is: true
所以,我不明白为什么它说它不是空的,不是真的,不是假的。 你们能想象为什么会这样吗

我正在尝试读取的文件内容(无编码)如下所示:

notices:true
没别的了


任何帮助都将不胜感激,提前谢谢。

您使用的是
a==b
而不是
a.equals(b)
请参见:。

您使用的是
a==b
而不是
a.equals(b)
请参见:。

您使用的是
a==b
而不是
a.equals(b)
请参见:.

您使用的是
a==b
而不是
a.equals(b)
请参见:.

使用
equals()
方法进行字符串内容比较,
=
使用
equals()
方法进行字符串内容比较,
=
用于字符串引用比较

使用
equals()
方法进行字符串内容比较,
==
用于字符串引用比较

使用
equals()
方法进行字符串内容比较,
=
用于字符串引用比较

好了,==运算符比较引用。您希望在此处使用equals()方法:

if (sLine[1].equals("true")) {
    [...]
}
此外,还应使用该方法,以确保字符串中没有前导空格或尾随空格。像这样的一行:
param=true
将使用您的代码解析为“true”,这不等于“true”


嗯,==运算符比较引用。您希望在此处使用equals()方法:

if (sLine[1].equals("true")) {
    [...]
}
此外,还应使用该方法,以确保字符串中没有前导空格或尾随空格。像这样的一行:
param=true
将使用您的代码解析为“true”,这不等于“true”


嗯,==运算符比较引用。您希望在此处使用equals()方法:

if (sLine[1].equals("true")) {
    [...]
}
此外,还应使用该方法,以确保字符串中没有前导空格或尾随空格。像这样的一行:
param=true
将使用您的代码解析为“true”,这不等于“true”


嗯,==运算符比较引用。您希望在此处使用equals()方法:

if (sLine[1].equals("true")) {
    [...]
}
此外,还应使用该方法,以确保字符串中没有前导空格或尾随空格。像这样的一行:
param=true
将使用您的代码解析为“true”,这不等于“true”

一般而言,变化:

if (cond1) { ... }
if (cond2) { ... }  
if (cond3) { ... }
if (!cond1 && !cond2 && !cond3) { .... }

在最多一个条件为真的情况下,如您的示例中所示。

通常,更改:

if (cond1) { ... }
if (cond2) { ... }  
if (cond3) { ... }
if (!cond1 && !cond2 && !cond3) { .... }

在最多一个条件为真的情况下,如您的示例中所示。

通常,更改:

if (cond1) { ... }
if (cond2) { ... }  
if (cond3) { ... }
if (!cond1 && !cond2 && !cond3) { .... }

在最多一个条件为真的情况下,如您的示例中所示。

通常,更改:

if (cond1) { ... }
if (cond2) { ... }  
if (cond3) { ... }
if (!cond1 && !cond2 && !cond3) { .... }



在最多一个条件为真的情况下,如在您的示例中。

不要使用
==
比较字符串值。使用
equals()
祝贺您!您是“谁在12月22日发布==vs.equals问题”竞赛的获胜者。对不起,我不知道是什么导致了问题,所以我没有检查字符串的精确比较。我对java有点陌生,不确定问题出在哪里。@Holythonder别担心。这只是一点讽刺,因为与你的问题根源相同的问题每天至少出现一次。因此,可以说这是Java的一个弱点。不要使用
=
比较字符串值。使用
equals()
祝贺您!您是“谁在12月22日发布==vs.equals问题”竞赛的获胜者。对不起,我不知道是什么导致了问题,所以我没有检查字符串的精确比较。我对java有点陌生,不确定问题出在哪里。@Holythonder别担心。这只是一点讽刺,因为与你的问题根源相同的问题每天至少出现一次。因此,可以说这是Java的一个弱点。不要使用
=
比较字符串值。使用
equals()
祝贺您!您是“谁在12月22日发布==vs.equals问题”竞赛的获胜者。对不起,我不知道是什么导致了问题,所以我没有检查字符串的精确比较。我对java有点陌生,不确定问题出在哪里。@Holythonder别担心。这只是一点讽刺,因为与你的问题根源相同的问题每天至少出现一次。因此,可以说这是Java的一个弱点。不要使用
=
比较字符串值。使用
equals()
祝贺您!您是“谁在12月22日发布==vs.equals问题”竞赛的获胜者。对不起,我不知道是什么导致了问题,所以我没有检查字符串的精确比较。我对java有点陌生,不确定问题出在哪里。@Holythonder别担心。这只是一点讽刺,因为与你的问题根源相同的问题每天至少出现一次。所以可以说这是Java的一个弱点。太好了,非常感谢!我已经花了大约两个小时在这上面胡闹,想看看发生了什么!太好了,非常感谢!我已经花了大约两个小时在这上面胡闹,想看看发生了什么!太好了,非常感谢!我已经花了大约两个小时在这上面胡闹,想看看发生了什么!太好了,非常感谢!我已经花了大约两个小时在这上面胡闹,想看看发生了什么!谢谢我对java相当陌生,我知道一些,并且可以处理最基本的东西,但我不知道这些指导原则!谢谢我对java相当陌生,我知道一些,并且可以处理最基本的东西,但我不知道