if语句总是在字符串比较时返回false [重复]

问题描述 投票:-2回答:1

这个问题在这里已有答案:

在继续下一个活动之前,我已经使用此代码尝试确认用户输入密码是否相同且没有不匹配。但是if语句总是返回false。它适用于硬编码文本,但始终为if返回false。我错过了什么吗?

private void validate(EditText userPassword, EditText userConfirmPassword){
   String userPasswordtext = userPassword.getEditableText().toString();
  String userConfirmPasswordtext = userConfirmPassword.getEditableText().toString();

    if(userPasswordtext == userConfirmPasswordtext){
        Intent intent = new Intent(this, MainActivity.class);
        startActivity(intent);
    }else{
        Toast a=Toast.makeText(this, "Passwords do not match", Toast.LENGTH_SHORT);
        a.show();
    }
}
java android if-statement android-edittext
1个回答
0
投票

比较两个字符串时使用.equals

if (userPasswordtext.equals(userConfirmPasswordtext)) {
© www.soinside.com 2019 - 2024. All rights reserved.