v2.get(0).toString()为我从数据库里的密码
 jPasswordField1.getPassword()问用户输入的密码
     如果要验证用输入密码是否相等要怎么写呢???   各位顺便帮我看看我写的哪里错了??
if(Integer.parseInt(v2.get(0).toString())==Integer.parseInt(jPasswordField1.getPassword().toString()))

解决方案 »

  1.   

    直接这样比不是更好if(v2.get(0).toString().equals(jPasswordField1.getPassword().toString()))
      

  2.   

    字符串比较不要用==,要用equals
      

  3.   

    你的密码全是数字?
    用下面的比较好吧:
    if(v2.get(0).toString().equals(String.valueOf(jPasswordField1.getPassword())))
    getPassword()获得的是字符数组,使用toString()方法获得并不是所希望的字符串。
      

  4.   

    if(Integer.parseInt(v2.get(0).toString())==Integer.parseInt(jPasswordField1.getPassword().toString()))是在你数据库记录和用户输入的密码都是数字的时候才可以使用,如果数据库中的记录或用户输入的密码中包含字符就会出现转换异常,
    如果你使用的数据库中密码那一列的数据类型是字符型建议使用
    if(v2.get(0).toString().equals(String.valueOf(jPasswordField1.getPassword()))
      

  5.   

    这(jPasswordField1) 玩意获取的是加密后的string ,你可以打印出来看看是啥东西,我的前一个项目在密码处理的时候 用的是jPasswordField1.getText();
     嘿嘿楼上的仁兄回答的是对的哦。
      

  6.   

    谢谢楼上的给位~~~已经用equals方法解决了问题~~
      

  7.   

    用字节数组方式比较:  java.util.Arrays.equals(byte[],byte[]) ;
      

  8.   

    请问byte[]类型强转成String型能等价于另一个byte[]类型吗?
      

  9.   

    v2.get(0).toString().equals(new String(YourJPasswordField.getPassword()));
      

  10.   

    if(v2.get(0).toString().equals(String.valueOf(jPasswordField1.getPassword())) 
      

  11.   

    此回复为自动发出,仅用于显示而已,并无任何其他特殊作用
    楼主【tiancuiwusky】截止到2008-06-25 14:50:17的历史汇总数据(不包括此帖):
    发帖数:0                  发帖分:0                  
    结贴数:0                  结贴分:0                  
    未结数:0                  未结分:0                  
    结贴率:-------------------结分率:-------------------
    如何结贴请参考这里:http://topic.csdn.net/u/20080501/09/ef7ba1b3-6466-49f6-9d92-36fe6d471dd1.html