首页 > 电脑 > java中的equals方法

java中的equals方法

电脑 2022-06-20

java中的equals怎么用?

equals 方法是String类从它的超类Object中继承的, 被用来检测两个对象是否相等,即两个对象的内容是否相等,区分大小写。

例子:

s1=newString("sony");//创建的是字符串对象
s1.equals("sony");//返回true
s1=="sony"//返回false
//如果
s1="sony";
s1=="sony"//返回true
//如果
s1="sony";
s2="sony";
s1.equals(s2);或者string.equals(s1,s2);//返回true

JAVA中equals的用法

String类对equals()方法进行了覆盖,只要引用指向的对象的内容是一样的就认为他们相等。你可以看一下String的equals()的源码:

publicbooleanequals(ObjectanObject){
if(this==anObject){
returntrue;
}
if(anObjectinstanceofString){
StringanotherString=(String)anObject;
intn=value.length;
if(n==anotherString.value.length){
charv1[]=value;
charv2[]=anotherString.value;
inti=0;
while(n--!=0){
if(v1[i]!=v2[i])
returnfalse;
i++;
}
returntrue;
}
}
returnfalse;
}


而Object类默认的equals()方法就是比较两个引用指向的对象本身,如果指向同一个对象,那就认为他们是相等的,否则不相等,除非你像String类那样对其进行覆盖重写。

JAVA中的equal方法的格式和用法?

java中的是equals,没有equal,equals比较的是内容,只要值相同就是true。 如: String str = new String("aaa"); String str1 = new String("aaa"); boolean bl = str.equals(str1); 结果就是:true。 备注:但是如果比较的是str==str1,这个结果就是false(地址引用不同)。

Java中==和equal有什么区别

Java中==和equal的区别为:

1、== 表示 判断2个变量或对象实例是否指向同一个内存空间,equals()表示 判断2个变量或对象实例所指向的内存空间的值是否相同。

2、== 表示 对内存地址进行比较,equals()表示 对字符串的内容进行比较。

3、== 表示引用是否相同,equals() 表示值是否相同。

扩展资料:

Java compareTo() 方法用于两种方式的比较:

(1) 字符串与对象进行比较。

(2) 按字典顺序比较两个字符串。

代码示例:

public class Test {

public static void main(String args[]) {

String str1 = "Strings";

String str2 = "Strings";

String str3 = "Strings123";

int result = str1.compareTo( str2 );

System.out.println(result);

result = str2.compareTo( str3 );

System.out.println(result);

result = str3.compareTo( str1 );

System.out.println(result);

} }

以上程序执行结果为:0, -3, 3

参考资料来源: Java官方文档-Class Object-equals()

关于java中equals方法的疑惑

equals 方法是 java.lang.Object 类的方法。 有两种用法说明: (1)对于字符串变量来说,使用“==”和“equals()”方法比较字符串时,其比较方法不同。 “==”比较两个变量本身的值,即两个对象在内存中的首地址。 “equals()”比较字符串中所包含的内容是否相同。 比如: String s1,s2,s3 = "abc", s4 ="abc" ; s1 = new String("abc"); s2 = new String("abc"); 那么: s1==s2 是 false //两个变量的内存地址不一样,也就是说它们指向的对象不 一样, 故不相等。 s1.eq

标签:Java 信息技术 编程 Java编程

大明白知识网 Copyright © 2020-2022 www.wangpan131.com. Some Rights Reserved.