2 回答

TA貢獻1921條經驗 獲得超9個贊
對于您想要完成的任務,我建議首先檢查密碼字段是否為空,如果不是,請檢查它們是否不匹配,如果匹配,則顯示成功注冊警報。
if (p1.getPassword().length == 0 || p2.getPassword().length == 0){
JOptionPane.showMessageDialog(null, "Passwords fields can not be empty.", "Woops", JOptionPane.ERROR_MESSAGE);
}
else if (!Arrays.equals(p1.getPassword(), p2.getPassword())) {
JOptionPane.showMessageDialog(null, "Passwords do not match.", "Woops", JOptionPane.ERROR_MESSAGE);
}
else {
JOptionPane.showMessageDialog(null, "Registered Successfully", "Login Warning", JOptionPane.WARNING_MESSAGE);
}

TA貢獻1821條經驗 獲得超6個贊
我認為你沒有使用 if - else 如果正確,我的意思是,你想檢查,首先兩個密碼 XX.getPassword() 是否相同,你還想檢查這些密碼是否不為空,所以我認為你應該將 null 檢查作為第二個條件而不是 else(第一個條件不成立時的路徑)。像這樣的東西:
if (Arrays.equals(p1.getPassword(), p2.getPassword())) {
if (p1 != null && p2 != null){
JOptionPane.showMessageDialog(null, "Registered Successfully", "Login Warning", JOptionPane.WARNING_MESSAGE);
}else{
JOptionPane.showMessageDialog(null, "Passwords do not match or some. Or one of them is blank", "Woops", JOptionPane.ERROR_MESSAGE);
}}else {
JOptionPane.showMessageDialog(null, "Something were wroing.", "Woops", JOptionPane.ERROR_MESSAGE);}
添加回答
舉報