我正在使用Eclipse上的eclipse IDE(版本:3.4.2),并遇到以下问题。equal()和equalsIgnoreCase()为相等的字符串返回false
当使用equal()或equalsIgnoreCase()方法比较字符串时,即使字符串相等,我也会收到false。例如,下面的代码考虑以下条件为假,即使当值[0] =“DEBUG_MODE”
if (values[0].equalsIgnoreCase("debug_mode"))
debug_mode = true;
其是下面的循环的一部分:
String value = dis.readLine();
String values[] = value.trim().split("=");
if (values.length >= 2)
{
Config.prnt_dbg_msg(values[0] + "\t" + values[1]);
if (values[0].equalsIgnoreCase("debug_mode"))
debug_mode = isTrue(values[1]);
if (values[0].equalsIgnoreCase("debug_query_parsing"))
debug_query_parsing = isTrue(values[1]);
if (values[0].equalsIgnoreCase("username"))
Connection_Manager.alterAccessParameters(values[1], null, null);
if (values[0].equalsIgnoreCase("password"))
Connection_Manager.alterAccessParameters(null, values[1], null);
if (values[0].equalsIgnoreCase("database"))
Connection_Manager.alterAccessParameters(null, null, values[1]);
if (values[0].equalsIgnoreCase("allow_duplicate_entries"))
allow_duplicate_entries = isTrue(values[1]);
}
我试图使用value[0].equal("debug_mode")
并得到了同样的结果。 有人知道为什么吗?
什么是值的实际值[0] – Bozho 2010-11-18 01:06:37
您确定110%确定'values [0]'包含值为“debug_mode”的字符串吗?将其打印到控制台以确保。 – 2010-11-18 01:06:56
如果条件是否可以在此之前打印值[0]? – 2010-11-18 01:08:02