2015-11-25 111 views
0

我只想檢查給定的密碼是否彼此不相等。所以我做了這個:無法通過密碼驗證Android

String password = etPassword.getText().toString().trim(); 
    String confirmPassword = etConfirmPassword.getText().toString().trim(); 

    if (password != confirmPassword) { 
     Toast.makeText(getApplicationContext(), 
       "Passwords do not match", Toast.LENGTH_LONG) 
       .show(); 
    } 

但不知何故,它不起作用。當我給這兩個密碼輸入值「e」時,我已經記錄了它。

+1

檢查此信息http://stackoverflow.com/questions/1643067/whats-the-difference-between-equals-and比較 –

回答

3

使用這種equals()方法,而不是=這樣的:

if (!password.equals(confirmPassword)) { 

隨着你幾乎總是要使用equals方法字符串。事實上,對於你所做的一般對象。

2

不能使用!=,嘗試用.equals()

if (password.equals(confirmPassword) == false) { 
     Toast.makeText(getApplicationContext(), 
       "Passwords do not match", Toast.LENGTH_LONG) 
       .show(); 
    }