Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/197.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在我的android应用程序上,我可以';即使我从数据库中得到真实值,也不能登录_Android_Mongodb_If Statement - Fatal编程技术网

在我的android应用程序上,我可以';即使我从数据库中得到真实值,也不能登录

在我的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

用户名和密码正确,但“如果(用户名=…)”此块不起作用。也没有错误。它向onPostExecute()方法返回0值

asdasd

   @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、 但我必须解释。现在解释我的答案