shwq.net
当前位置:首页 >> jAvA 中String类型在比较时,为什么用EquAls 与 ==... >>

jAvA 中String类型在比较时,为什么用EquAls 与 ==...

java中的==是用来判断对象所使用的内存地址是不是同一个,进而判断是不是同一个对象。例如 objA == objB 注意这里是同一个对象才会是true,如果不是同一个对象,哪怕两个对象所有属性都相同也会返回false。 而equals则是一个方法,你可以为自己...

==比较地址,equals比较内容 String str1 = "abc"; String str2 = "abcd"; String str3 = str2; System.out.println(str2 == str3);//结果为true,因为他们是同一个变量,地址也相同 System.out.println(str1.equals(str2.substring(0,3)));//结...

你好,括号中是回答 String s1 = "abc",String s2 = "abc" 那么 s1 == s2 返回结果是什么?(true)为什么?(因为它俩指向了同一个对象) s1.equals( s2) 返回结果是什么?(true)为什么?(因为它俩指向了同一个对象,同一个对象当然值相等)...

String类重写了toString()方法,用.equals()比较可以直接比较其字符串,但是因为String是对象,用双等号比较的是其地址值,而两个对象的地址值肯定不一样。一般比较字符串用的是String的equals方法,你用双等号比较其地址值在开发中是没有任何意...

==判断的是两个字符串地址是否相同 .equals才是比较字符串内容

equals 是比较的两个字符串是否一样 比如 “asd”.equals(“asd”)==true; "==" 它比较的是两个“引用” 比如: String a=new String ("a"); String b=new String ("a"); System.out.println(a==b)它就输出false了 因为不是一个引用啊(虽然都是a);

你好,equals并不只是只能判断String类型,equals是Object类中的方法,也就是说所有继承Object类的子类都是拥有equals方法的,也就是说所有继承java.lang.Object类的子类创建的对象都是可以equals判断的,比如Integer,Boolean,Long、包括集合类...

equals比较的是值,因此只要值相等,equals就返回true。 “==”比较的是内存地址,这个就相对复杂一点了。 在java的内存中大致可以分为3块:栈、堆、常量池。 String a = "ni";//这里a保存在栈中,他指向常量池的值“ni”,因此 System.out.println(...

java中有个常量池,所有使用过的字符串都会被扔进去,当这个字符串再次被使用的时候就不会是new一个新的,而是取池里的,所以你这里出现的俩个"java"实际上是同一个对象 你可以搜一下java 常量池了解了解

public boolean equals(Object anObject) { if (this == anObject) { return true; } if (anObject instanceof String) { String anotherString = (String) anObject; int n = value.length; if (n == anotherString.value.length) { char v1[]...

网站首页 | 网站地图
All rights reserved Powered by www.shwq.net
copyright ©right 2010-2021。
内容来自网络,如有侵犯请联系客服。zhit325@qq.com