java 语言中String类equals()方法源码阅读分析

    在面试和实际开发中经常会用到字符串String的比较,比较他们的值是否相等,和基本类型比较运算符不同的是,基本类型比较运算符比较的是它们的值,而如果使用比较运算符比较String类的值是否相等,则可能得不到想要的结果。比如如下的代码。

      从如上代码我们可以看出来,对几本类型进行比较的时候可以使用比较运算符进行值的比较,而String类则需要使用equal()方法进行值的比较。为什么会这样呢,我们可以查阅String类的equals()源代码来进行分析。

equals()源代码

(1)String类中equals()方法先对String对象和比较的对象进行比较,看是否指向同一个对象,如果true则是一个对象,值肯定相等;

(2)判断比较对象是不是String类型的,如果不是就返回False;

(3)如果是String类型,则比较两个String对象长度是否相等,不相等就返回False;

(4)最后再在循环里面一个一个字符进行比较,value是此String类的值的字符数组。

最后返回是否相等。

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 第2章 基本语法 2.1 概述 基本句法和变量 语句 JavaScript程序的执行单位为行(line),也就是一...
    悟名先生阅读 4,221评论 0 13
  • 一、Java 简介 Java是由Sun Microsystems公司于1995年5月推出的Java面向对象程序设计...
    子非鱼_t_阅读 4,325评论 1 44
  • 1. Java基础部分 基础部分的顺序:基本语法,类相关的语法,内部类的语法,继承相关的语法,异常的语法,线程的语...
    子非鱼_t_阅读 31,804评论 18 399
  • [壹] 入夜,窗映虚影伴残烛,竹门中人半掩屋。 自古以来,黑白两子以乾坤之道,明天下之势,棋盘上的沙场,一...
    离小慕阅读 422评论 3 4
  • 想想看,你有多久没有好好读完一本书了? 感谢乔布斯,感谢所有的智能手机、互联网产品从业者,移动互联网,已经融入了我...
    午后壹咖啡阅读 479评论 0 1