rs.getString("userpass").equals("123")

解决方案 »

  1.   

    为什么要用equals啊,==为什么不能用?谢谢,等会儿马上结分
      

  2.   

    rs.getString("userpass")!=null && rs.getString("userpass").equals("123")
    要不然可能会出空指针
    给你转载一下其他人的帖子,希望对你理解这个问题有帮助转载: qhgary(Shining)的:str="";   在内存中开辟了空间,只是没有放东西,可以使用这个引用str
    str = null;只是说明有这么个String的引用str,但是没有给他分配空间,不能在程序中使  
               用str,顶多出现在判断语句中,if (str==null)...  str = null,多数情况是
               之前已经有了str="...";通过str=null,告诉编译器,我原来申请的空间不要
               了,你可以回收了。
    String str=new String();应该和str=""一样的作用.
    str==""这样比较是不可以的,因为str是某块内存的引用,""虽然没有放东西,但是也代表
           某块内存的引用,if (str=="")...  只是在比较这两个引用(当然不等)
           ,而不是比较他们引用空间的内容
    一般比较String的时候是通过s1.equals("s2")来实现的,当然也可以
    if (s1.compareTo(s2))==0 ...  (表示s1,s2内容相等)
    转载: yun15291li(秋飞意)一个对象名实际是一个指针 
    ==比较的是两个指针是否指向同一个地址 
    equals比较的是两个指针指向的地址中的内容 JAVA中的变量分为基本类型和对象类型,基本类型包括int,long,char之类的变量,在判断这类变量是否相等时,使用==,而在对象之间进行比较时==就不行了,如果两个对象使用==比较返回true的话,说明它们指向的是同一个引用,这样的比较没有意义,所以对象之间的比较用从Object对象里继承来的equals()方法来进行,Object中的equals()方法不做任何实际比较,只是符合如下规律:1.可逆(reflexive) 例x.equals(x)返回true 2.对称(symmetric) 例如果x.equals(y)返回true,则y.equals(x)返回true 3.传递(transitive) 例如果x.equals(y)返回true,y.equals(z)返回true,则x.equals(z)返回true 4.持续(consistent) 5.非空 
    所有对象实现的equals()方法都满足这些条件,而不同的对象比较的方法则不相同,例如String对象的equals()就是比较两个自符串每个自符是否一致来实现的,因此如果是自己创建的对象,如果想要比较的话,就应该自己实现equals()方法.
      

  3.   

    JAVA中判断字符串是否相等就只能用equals()
      

  4.   

    rs.getString("userpass").equals("123")