java equals函数用法详解

 更新时间:2012年11月30日 10:42:14   投稿:whsnow  
java 中equals函数的使用方法是广大java爱好者所关心的一个话题,本文将详细介绍其使用方法,需要了解的朋友可以参考下

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类转换为字符数组,逐位比较。

相关文章

  • Java中sleep()与wait()的区别总结

    Java中sleep()与wait()的区别总结

    因为最近学习时正好碰到这两个方法,就查阅相关资料,并通过程序实现,进行区别总结一下,所以下面这篇文章主要给大家总结介绍了关于Java中sleep()与wait()区别的相关资料,需要的朋友可以参考,下面来一起看看吧。
    2017-05-05
  • Spring HandlerInterceptor实现原理代码解析

    Spring HandlerInterceptor实现原理代码解析

    这篇文章主要介绍了Spring HandlerInterceptor实现原理代码解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-10-10
  • Java根据实体生成SQL数据库表的示例代码

    Java根据实体生成SQL数据库表的示例代码

    这篇文章主要来和大家分享一个Java实现根据实体生成SQL数据库表的代码,文中的实现代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下
    2023-07-07
  • Java多线程编程之ThreadLocal详解

    Java多线程编程之ThreadLocal详解

    这篇文章主要介绍了Java多线程编程之ThreadLocal详解,ThreadLocal是Java中的一个线程局部变量,该变量在多线程并发执行时,为每个线程都提供了一个独立的副本,简单来说,ThreadLocal提供了一种在多线程环境中,使每个线程绑定自己独立的变量的方法,需要的朋友可以参考下
    2023-09-09
  • SpringBoot2.1.3修改tomcat参数支持请求特殊符号问题

    SpringBoot2.1.3修改tomcat参数支持请求特殊符号问题

    最近遇到一个问题,比如GET请求中,key,value中带有特殊符号,请求会报错。接下来通过本文给大家分享解决SpringBoot2.1.3修改tomcat参数支持请求特殊符号 ,需要的朋友可以参考下
    2019-05-05
  • Java数据结构之哈夫曼树概述及实现

    Java数据结构之哈夫曼树概述及实现

    文中详细讲了关于Java哈夫曼树的概述以及用Java实现的方法,对各位正在学习java数据结构的小伙伴们有很大的帮助哟,需要的朋友可以参考下
    2021-05-05
  • JavaWeb文件上传与下载功能解析

    JavaWeb文件上传与下载功能解析

    这篇文章主要为大家详细介绍了JavaWeb文件上传与下载功能,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2016-06-06
  • Java注解(annotation)简述

    Java注解(annotation)简述

    这篇文章主要介绍了使用java的注解(用在java类的方法上的注解)方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2021-08-08
  • Java 单链表数据结构的增删改查教程

    Java 单链表数据结构的增删改查教程

    这篇文章主要介绍了Java 单链表数据结构的增删改查教程,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-10-10
  • java的依赖倒置原则你了解多少

    java的依赖倒置原则你了解多少

    这篇文章主要为大家详细介绍了java的依赖倒置原则,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下,希望能够给你带来帮助
    2022-02-02

最新评论