if(t1.getText().length()==0 || t2.getPassword().toString().trim()==null){
JOptionPane.showMessageDialog(null,"登录名/密码 不能为空","警告",JOptionPane.INFORMATION_MESSAGE); 
}有问题吗? 为什么验证不出来t2呢?(t2为JPasswordField  t1为普通的JTextField)

解决方案 »

  1.   

    t2.getPassword().toString().trim()==null || t2.getPassword().toString().trim().equals("")试一下 一般这两种情况都要考虑到
      

  2.   

    if(t1.getText().length()==0 || t2.getPassword().toString().trim()==null){ 
    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; }
      

  3.   

      容易引起空指针异常if(t1.getText() == null || "".equals(t1.getText.trim()) 
       || t2.getPassword() == null || "".equals(t2.getPassword.trim())){
           JOptionPane.showMessageDialog(null,"登录名/密码 不能为空","警告",
                                        JOptionPane.INFORMATION_MESSAGE); 
    }
      

  4.   

    订正下, 作为伪代码 LZ 参考if(isEmpty(t1.getText())|| isEmpty(t2.getPassword())){ 
    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 = "";
      

  5.   

    一般先判断!=null在判断length是不是0或equals("");
    if(t1.getText()==null || t1.getText().length()==0 || t2.getPassword().toString().trim()==null ||t2.getPassword().toString().trim().equals("")){
    JOptionPane.showMessageDialog(null,"登录名/密码 不能为空","警告",JOptionPane.INFORMATION_MESSAGE);
      

  6.   


    即使密码处什么都不写,
    t2.getPassword()取到的是"",
    是一个字符串,只是这个字符串的长度为0。
    并不是null,
    所以你检查不出t2。至于如果判断,楼上几位讲的够多了。