private void jButton2ActionPerformed(java.awt.event.ActionEvent evt) {
String a,b;
a=jTextField1.getText();
b=Arrays.toString(jPasswordField2.getPassword());
if (a.equals("sam") && b.equals("hi")) {
JOptionPane.showMessageDialog(null,"Login");
}
else{
JOptionPane.showMessageDialog(null,"Error");
}
}
只有部分被执行,当使用“或”运算符时,如果部分有效。似乎在“和”条件中有错误。
答案 0 :(得分:0)
Arrays.toString(new String[]{"hi"})
返回“[hi]”。
因此,您应将if
更改为if (a.equals("sam") && b.equals("[hi]"))
或将b
的值更改为b=jPasswordField2.getPassword()[0];
。
答案 1 :(得分:0)
getpassword方法将密码返回到括号中。回归将是这样的:[hi]。所以你必须使用删除括号。使用像打击这样的代码:
b=b.substring(1,b.length()-1);
此代码将删除密码字符串中的括号。