java equals函数详解
来源:互联网 发布:索尼网络电视怎么用 编辑:程序博客网 时间:2024/06/04 19:52
equals函数在基类object中已经定义,源码如下
public boolean equals(Object obj) { return (this == obj); }
从源码中可以看出默认的equals()方法与“==”是一致的,都是比较的对象的引用,而非对象值(这里与我们常识中equals()用于对象的比较是相饽的,原因是java中的大多数类都重写了equals()方法,下面已String类举例,String类equals()方法源码如下:)
/** The value is used for character storage. */ private final char value[]; /** The offset is the first index of the storage that is used. */ private final int offset; /** The count is the number of characters in the String. */ private final int count;
public boolean equals(Object anObject) { if (this == anObject) { return true; } if (anObject instanceof String) { String anotherString = (String)anObject; int n = count; if (n == anotherString.count) { char v1[] = value; char v2[] = anotherString.value; int i = offset; int j = anotherString.offset; while (n-- != 0) { if (v1[i++] != v2[j++]) return false; } return true; } } return false; }
String类的equals()非常简单,只是将String类转换为字符数组,逐位比较。
综上,使用equals()方法我们应当注意:
1. 如果应用equals()方法的是自定义对象,你一定要在自定义类中重写系统的equals()方法。
2. 小知识,大麻烦。
- java equals函数详解
- java equals函数
- Java equals与hasCode详解
- Java基础之equals详解
- java中equals方法详解
- java学习4、equals函数
- java中的hashcode()和equals()方法详解
- java中hashcode()和equals()的详解
- java中hashcode()和equals()的详解
- java中hashcode()和equals()的详解
- java中hashcode()和equals()的详解
- java中hashcode()和equals()的详解
- java中hashcode()和equals()的详解
- java中hashcode()和equals()的详解
- java中hashcode()和equals()的详解
- Java中的hashcode()和equals()方法详解
- java中hashcode()和equals()的详解
- java中的hashcode()和equals()方法详解
- Agile PLM: 无法上传任何文件,错误显“FOLDERXXXX”已存在
- JAVA学习,你必读的5本JAVA书籍◆-内附下载地址-◆◆留邮箱...
- tomcat下的server.xml文件解读
- 云计算的十大优势
- 新征程
- java equals函数详解
- 什麼是 Photon Server?
- 我的.NET学习日记(4)
- CSS中IE6、7和火狐对margin、padding的兼容性解析
- 使用异步 I/O 大大提高应用程序的性能
- Recall(召回率);Precision(准确率);F1-Meature(综合评价指标);true positives;false positives;false negatives..
- 怎样发现android中应用的内存使用情况
- 从招聘信息看学习的方向
- JS事件冒泡(阻止