if(t1.getText().length()==0 || t2.getPassword().toString().trim()==null){
JOptionPane.showMessageDialog(null,"登录名/密码 不能为空","警告",JOptionPane.INFORMATION_MESSAGE);
}有问题吗? 为什么验证不出来t2呢?(t2为JPasswordField t1为普通的JTextField)
JOptionPane.showMessageDialog(null,"登录名/密码 不能为空","警告",JOptionPane.INFORMATION_MESSAGE);
}有问题吗? 为什么验证不出来t2呢?(t2为JPasswordField t1为普通的JTextField)
JOptionPane.showMessageDialog(null,"登录名/密码 不能为空","警告",JOptionPane.INFORMATION_MESSAGE);
}
修改成如下试试if(isEmpty(t1.getText())|| isEmpty(t2.getPassword())){
JOptionPane.showMessageDialog(null,"登录名/密码 不能为空","警告",JOptionPane.INFORMATION_MESSAGE);
}
public static boolean isEmpty(String str) {
if (str == null || str.trim().length())
return false;
return true;
}public static boolean isBlank(String str) {
if (str == null || str.length())
return false;
return true; }
|| t2.getPassword() == null || "".equals(t2.getPassword.trim())){
JOptionPane.showMessageDialog(null,"登录名/密码 不能为空","警告",
JOptionPane.INFORMATION_MESSAGE);
}
JOptionPane.showMessageDialog(null,"登录名/密码 不能为空","警告",JOptionPane.INFORMATION_MESSAGE);
}
public static boolean isEmpty(String str) {
if (str == null || EMPTY.equals(str.trim()))
return false;
return true;
}public static boolean isBlank(String str) {
if (str == null || EMPTY.equals(str))
return false;
return true; }
private static final String EMPTY = "";
if(t1.getText()==null || t1.getText().length()==0 || t2.getPassword().toString().trim()==null ||t2.getPassword().toString().trim().equals("")){
JOptionPane.showMessageDialog(null,"登录名/密码 不能为空","警告",JOptionPane.INFORMATION_MESSAGE);
}
即使密码处什么都不写,
t2.getPassword()取到的是"",
是一个字符串,只是这个字符串的长度为0。
并不是null,
所以你检查不出t2。至于如果判断,楼上几位讲的够多了。