Android比较字符串忽略大小写

时间:2012-01-08 06:54:53

标签: android string

resultString是我从sqlite获得的参数

resultString = result.getString(result.getColumnIndex(1));

我想将忽略大小写与用户输入进行比较,以下是我使用的代码。但它不起作用。

例如,在数据库中,我存储了一个用户名“George” 当我登录时,我必须输入“乔治”。“乔治”不起作用。

这是我要比较的代码。

if (userName.equalsIgnoreCase(resultString)) {
    return true;
}

可能是什么问题?

4 个答案:

答案 0 :(得分:7)

请尝试以下代码,

if (userName.trim().equalsIgnoreCase(resultString.trim())) 
{     
       return true; 
} 

答案 1 :(得分:2)

如果情况唯一不同,您的代码应该有效。我怀疑你有前导空格或尾随空格。请尝试以下方法:

if (userName.trim().equalsIgnoreCase(resultString.trim())) {
    return true;
}

答案 2 :(得分:1)

我很恐慌,并没有尝试打印出结果。问题是我的查询声明。

   String whereClause = DatabaseHelper.USER_COL + " name =?";

除非输入与数据相同,否则resultString始终为空。

要修复它,我按照这篇文章中的说明操作 sqlite LIKE problem in android

   String whereClause = DatabaseHelper.USER_COL + " LIKE ?";

   userName = userName+"%"

答案 3 :(得分:0)

    int Num;
    String answer = et_q7.getText().toString();
    String right_answer = "Air Pollution";
    String right_answer2 = "Air";
    if (answer.trim().equalsIgnoreCase(right_answer.trim()) || answer.trim().equalsIgnoreCase(right_answer2.trim())) {
        Num = 1;
    } else {
        Num = 0;
    }