java equals函数用法详解
时间:2022-07-31 06:40:20
equals函数在基类object中已经定义,源码如下
public boolean equals(Object obj) {
return (this == obj);
}
从源码中可以看出默认的equals()方法与“==”是一致的,都是比较的对象的引用,而非对象值(这里与我们常识中equals()用于对象的比较是相饽的,原因是java中的大多数类都重写了equals()方法,下面已String类举例,String类equals()方法源码如下:)
[java]
/** 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;
[java] view plaincopyprint?
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;
}
} //www.software8.co
return false;
}
String类的equals()非常简单,只是将String类转换为字符数组,逐位比较。
综上,使用equals()方法我们应当注意:
1. 如何equals()应用的是自定义对象,你一定要在自定义类中重写系统的equals()方法。
2. 小知识, * 烦。
标签:java,equals函数
0
投稿
猜你喜欢
Android绘制圆形百分比加载圈效果
2023-07-16 17:23:38
Java适配器模式_动力节点Java学院整理
2021-09-06 10:50:53
Seata AT模式TM处理流程图文示例详解
2022-05-03 02:28:39
SpringBoot Web详解静态资源规则与定制化处理
2022-01-23 16:19:57
Qt for Android开发实例教程
2023-06-27 10:00:39
基于opencv实现车道线检测
2023-03-11 10:07:52
springboot+mybatis-plus 两种方式打印sql语句的方法
2022-12-29 13:41:11
Android中Bitmap常见的一些操作:缩放、裁剪、旋转和偏移
2023-10-06 18:24:32
Android APK使用Debug签名重新打包 Eclipse更改默认Debug签名
2022-03-07 13:27:12
Android自定义有限制区域的图例角度自识别涂鸦工具类完结篇
2022-10-22 23:05:13
Swing拆分窗格控件JSplitPane使用详解
2022-11-14 21:13:48
java打印正弦曲线示例
2022-05-04 00:48:56
Android编程实现为ListView创建上下文菜单(ContextMenu)的方法
2021-12-09 06:26:28
Android封装的http请求实用工具类
2021-09-16 03:03:52
Spring Boot集成Spring Cache过程详解
2023-08-02 19:20:16
C#实现计算一个点围绕另一个点旋转指定弧度后坐标值的方法
2023-07-15 21:35:09
Spring中自动注入的两种方式总结
2022-10-24 08:54:14
新手入门Jvm-- JVM对象创建与内存分配机制
2021-11-04 19:28:10
C#检查指定对象是否存在于ArrayList集合中的方法
2023-07-28 00:45:17
C#软件注册码的实现代码
2021-10-14 06:14:38