我正在使用以下使用布尔值的函数。
int recFound=0;
public Boolean CheckUser(String uName,String password)
{
try
{
statement=conn.createStatement();
resultSet=statement.executeQuery("select count(*) from UserMaster where username LIKE'"+uName+"' and password LIKE'"+password+"'");
if(resultSet.getRow()>0)
{
recFound=1;
}
else
{
recFound=0;
}
}
catch (Exception e) {
e.printStackTrace();
recFound=0;
}
if(recFound == 0)
{
return false;
}
else
{
return true;
}
}
我通过以下方式调用此函数:
boolean isValidUser=con.CheckUser(etLoginID.getText().toString(), etPassword.getText().toString());
if(isValidUser)
{
Intent i= new Intent(getApplicationContext(),Messages.class);
startActivity(i);
}
当我通过这个函数正确的值时,它不会产生recFound=1;
在最后一个条件下,虽然 recFound==0 它进入 else 条件并返回 true。
但是,当将此值分配给调用者函数返回值时,它会分配 false。
意味着它使 ,boolean isValidUser=con.CheckUser(etLoginID.getText().toString(), etPassword.getText().toString());
是虚假的。
isValidUser should get true in such case.
请帮我。