我正在尝试为Android应用程序在页面中进行登录。我的团队负责人已决定使用web服务进行此操作。String.equals()总是返回false?
每当在使用日志,发送请求,以3层可能的反应:
0: Wrong Password
20: Wrong username
otherwise: a UUID
我试图验证还给由Web服务这样的结果:
String resultString = result.toString();
if (resultString.equals("20")) {
Toast.makeText(getBaseContext(), "Het ingevulde emailadres klopt niet!", Toast.LENGTH_LONG).show();
return;
} else if (resultString.equals("0")) {
Toast.makeText(getBaseContext(), "Het ingevulde wachtwoord klopt niet!", Toast.LENGTH_LONG).show();
return;
} else {
Toast.makeText(getBaseContext(), "Debug, klopt", Toast.LENGTH_LONG).show();
return;
}
似乎像我的基本代码。然而,这段代码总是显示最底层的语句,所以它让前两个为false。
出于调试的目的,我也将resultString
返回到我的控制台。 (删除样本中的那一行)。在那里,我可以很明显地看到回报的结果实际上是20
。
这样简单的代码不能做我想做的事情吗?
谢谢。
检查是否没有空间 – Chol
检查resultString的长度。 –
由于响应不是你正在比较的(“0”和“20”)而不是“equals”,你应该使用'contains' – SilentKiller