equal () y equalsIgnoreCase () devuelven false para cadenas iguales

Estoy trabajando con eclipse IDE (Versión: 3.4.2) en una Mac y me he encontrado con el siguiente problema.

Al comparar entre cadenas utilizando los métodos equal () o equalsIgnoreCase (), recibo false incluso cuando las cadenas son iguales. Por ejemplo, el siguiente código considera la siguiente condición como falsa, incluso cuando los valores [0] = "debug_mode"

if (values[0].equalsIgnoreCase("debug_mode")) 
    debug_mode = true;

que es parte del siguiente ciclo:

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]);
}                         

Traté de usarvalue[0].equal("debug_mode") y obtuve el mismo resultado. ¿Alguien tiene alguna idea de por qué?

Respuestas a la pregunta(9)

Su respuesta a la pregunta