2017-11-17 122 views
1

我在寫一個簡單的GUI程序,我必須輸入用戶的登錄名和密碼,然後檢查他是否在數據庫(我的Hashmap)中。那是我遇到問題的地方。我通過containsKey檢查登錄是否正確,並通過containsValue檢查密碼。問題是,如果例如我有2個用戶:如何檢查Java中的HashMap中的鍵值是否正確

login: user1 password: example 
login: user2 password: programing 

如果我在JTextField和密碼「編程」把登錄爲user1,節目說,這是正確的。

這就是我遇到問題的地方。如何檢查密碼以確切登錄,這是關鍵嗎?

將是任何線索或解決方案:)非常感謝

回答

2

您可以使用這樣的檢查:

if(userEnteredPassword.equals(hashMap.get(userEnteredUsername))){ 
    // Correct credentials. 
    ..... 
} 

重要的是要使用userEnteredPassword.equals....而不是hashMap.get(userEnteredUsername).equals...因爲你會得到一個空指針如果沒有地圖項,則爲例外userEnteredUsername

+0

...或使用Objects.equals方法。 –

+0

它真的幫助了很多。感謝您的反饋:) –

+0

@PawełGustawKolasiński我很高興我能幫上忙。祝你好運。 – Titus

相關問題