String.equals()不起作用

时间:2014-11-05 19:03:04

标签: java android

我的问题是这不起作用:

if (result.equals("success")) {
    Toast.makeText(MainActivity.myContext, "Hausaufgabe eingetragen!", Toast.LENGTH_LONG).show();
    startSync(lv);
}
else if (result.equals("already exists")) {
    Toast.makeText(MainActivity.myContext, "Hausaufgabe wurde bereits eingetragen!", Toast.LENGTH_LONG).show();
}
else if (result.equals("user not exists")){
    Toast.makeText(MainActivity.myContext, "Das eingespeicherte Benutzerkonto ist ungültig oder gelöscht worden!", Toast.LENGTH_LONG).show();
}
else if (result.equals("server problem")){
    Toast.makeText(MainActivity.myContext, "Ein Server Problem ist aufgetreten!\n" + "Bitte melden!", Toast.LENGTH_LONG).show();
}
else {
    Toast.makeText(MainActivity.myContext, "Unbekannte Rückmeldung des Servers:\n" + result, Toast.LENGTH_LONG).show();
}

Log.d("API",result);

LogCat说API:成功,但应用程序中的反馈是“UnbekannteRückmeldungdesServers:                                                      成功“

1 个答案:

答案 0 :(得分:2)

使用trim()方法,因为变量result可能包含空格,例如“成功”:

if (result.trim().equals("success")) {
...
...

您可以使用toLowerCase()方法进行补充,以防止像“成功”这样的大写字母句柄:

 if (result.trim().toLowerCase().equals("success")) {
    ...
    ...

或尝试使用indexOf()方法

例如:

if (result.indexOf("success") > 0) {
...
...