在我的android应用程序上,我可以';即使我从数据库中得到真实值,也不能登录
用户名和密码正确,但“如果(用户名=…)”此块不起作用。也没有错误。它向onPostExecute()方法返回0值 asdasd在我的android应用程序上,我可以';即使我从数据库中得到真实值,也不能登录,android,mongodb,if-statement,Android,Mongodb,If Statement,用户名和密码正确,但“如果(用户名=…)”此块不起作用。也没有错误。它向onPostExecute()方法返回0值 asdasd @Override protected void onPostExecute(Integer result){ super.onPostExecute(result); if(result==1) { txtViewUserName.setText(userName); txtViewPass
@Override
protected void onPostExecute(Integer result){
super.onPostExecute(result);
if(result==1)
{
txtViewUserName.setText(userName);
txtViewPassword.setText(password);
}
else if(result.intValue()==0)
{
txtViewUserName.setText("Result 0");
}
....
}
您的错误是使用了
=
操作符,=
操作符比较对象在内存中的位置
使用equals()
方法代替==
运算符比较两个字符串对象
Override
public Integer doInBackground(Void... Params){
try{
....
if(userName.equals("sinan") && password.equals("123456"))
{
returnValue=1;
break;
}
else
{
returnValue=0;
}
}
return returnValue;
}
catch (Exception ex)
{
return (-1);
}
}您的错误是使用了
=
操作符,=
操作符比较对象在内存中的位置
使用equals()
方法代替==
运算符比较两个字符串对象
Override
public Integer doInBackground(Void... Params){
try{
....
if(userName.equals("sinan") && password.equals("123456"))
{
returnValue=1;
break;
}
else
{
returnValue=0;
}
}
return returnValue;
}
catch (Exception ex)
{
return (-1);
}
}对于字符串比较,必须使用
equals()
方法:
if(userName.equals("sinan") && password.equals("123456"))
不要担心,当我们开始java编程时,这是一个非常常见的错误:)
记住:
.equals()此方法将此字符串与指定的对象进行比较。结果
当且仅当参数不为null且为字符串对象时为true
表示与此对象相同的字符序列的
=
:测试引用相等性。
.equals()
:测试值是否相等。对于字符串比较,必须使用equals()
方法:
if(userName.equals("sinan") && password.equals("123456"))
不要担心,当我们开始java编程时,这是一个非常常见的错误:)
记住:
.equals()此方法将此字符串与指定的对象进行比较。结果
当且仅当参数不为null且为字符串对象时为true
表示与此对象相同的字符序列的
=
:测试引用相等性。
.equals()
:测试值是否相等。请参见为什么-1?我认为这个答案也是正确的o、 但我必须解释。现在解释我的答案为什么-1?我认为这个答案也是正确的o、 但我必须解释。现在解释我的答案