java中,String类里提供了两种字符串的比较方式(算上“==”应该是三种)

  String line1 = new String("0123456789");

  String line2 = new String("0123456789");

  String line3 = line1;

  System.out.println(line1.equals(line2));    //output: true

  System.out.println(line1.contentEquals(line2));  //output:true

  System.out.println(line1.equals(line3));    //output:true

equals方法:  首先比较两个字符串的引用是否相同,如果相同则返回true,如果不相同,那么比较两个字符串每个位置对应的char值是否相同,如果都相同返回true;

contentEquals方法:    直接比较两个字符串对应位置的char值是否相同,如果全都相同返回true

==方法:    比较两个String对象的引用是否相同,如果相同返回true

java中equals方法和contentEquals方法区别的更多相关文章

  1. java中equals方法和hashcode方法的区别和联系,以及为什么要重写这两个方法,不重写会怎样

    一.在Object类中的定义为:public native int hashCode();是一个本地方法,返回的对象的地址值.但是,同样的思路,在String等封装类中对此方法进行了重写.方法调用得到 ...

  2. java中paint方法和paintComponent方法的不同

    /* 1.由Component.java源代码中可以看见其中的paint()方法体是空的,在Container中重写了该方法,其子类Window等也重写了该方法 2.由JComponent.java源 ...

  3. Java中get()方法和set()方法如何使用?

    在java中,为了保证数据的安全性,我们会把数据定义为private等(私有.封装),如果想要调用就会用到set()方法与get方法或者构造函数方法.这里说的是第一种方法,set()与get(),既然 ...

  4. Java 中 sleep 方法和 wait 方法的区别?

    虽然两者都是用来暂停当前运行的线程,但是 sleep() 实际上只是短暂停顿,因为它不会释放锁,而 wait() 意味着条件等待,这就是为什么该方法要释放锁,因为只有这样,其他等待的线程才能在满足条件 ...

  5. jQuery中bind方法和live方法区别解析

    Javascript中的事件有它的独特性,有默认的执行事件,例如冒泡就是其中的一个.在很多比较复杂的应用程序中,停止事件的冒泡或捕获在程序开发当中是十分有用的,而在IE中有它的独特方式来阻止事件的冒泡 ...

  6. Java重写equals方法和hashCode方法

    package com.ddy; public class User {     private Integer id;     private String name;     private St ...

  7. thinkphp3.2.3中U()方法和redirect()方法区别

    今天博主看3.1的教程,学着3.2,就遇到了这个坑,怎么就是不跳转呢,很纳闷!! 在thinkphp3.1 中 U()方法是可以执行跳转的(看视频教程里面是可以的,博主没有测试过). 但是在think ...

  8. python list中append()方法和extend()方法区别

    共同点 只能作用于list类型(不能作用于tuple等其他类型) 单参数限制(不支持多参数) 不同点 list.append(object) 向列表中添加一个对象object. 使用append的时候 ...

  9. equals()方法和hashCode()方法详解

    equals()方法和hashCode()方法详解 1. Object类中equals()方法源代码如下所示: /** * Object类中的equals()方法 */ public boolean ...

随机推荐

  1. 我的Emacs折腾经验谈(一) 一些给新人的建议

    这几天都没有动力写mongodb的东西,我果然还是太懒了么~ 主要是没有一个系统的东西整理出来,加上我令人拙计的语言表达能力,这个坑只能慢慢再补了. 最近在折腾emacs这个东西,首先说我曾经算是个极 ...

  2. ASP.NET MVC:多语言的三种技术处理策略

    ASP.NET MVC:多语言的三种技术处理策略 背景 本文介绍了多语言的三种技术处理策略,每种策略对应一种场景,这三种场景是: 多语言资源信息只被.NET使用. 多语言资源信息只被Javascrip ...

  3. HC - 05 bluetooth module settings in Linux using CuteCom

    By default the bluetooth module HC-05 sets baud rate at 38400, data bits 8, Stop bits 1 All schemati ...

  4. 30+WordPress古典风格的主题-古典却不失时尚

    通过WordPress古典风格主题,你可以快速的让你的网站呈现古典情调,并在竞争中脱颖而出.古典风格的网页设计是非常受欢迎的,现在,你可能想知道为什么.很多人被古典风格吸引,他们将一些陈旧的,过时的, ...

  5. Js-Html 前端系列--全选,反选

    /* 全选 */ $("#selectedAll").click(function(){ var boxcList = $(".boxc");var boxcL ...

  6. Python自动化开发-变量、数据类型和运算

    一.变量 变量定义:Variables are used to store infomation to referrenced and manipulated in a computer progra ...

  7. 链接中的href=#是什么意思呢

    链接当前页面. ------------------- 通常有如下用法: <a href="#" onclick="window.close()"> ...

  8. import,include

    1. #import导入头文件,即:导入头文件中的内容到当前类 2. #import ""导⼊自定义类,#import <>导入类库中的头文件. 3.功能类似C语言中的 ...

  9. mvc架构和mvp架构

    mvc,mvp其实是复合模式,是多个设计模式的组合:将多个模式结合起来形成一个框架,已解决一般性问题. mvc: 既然mvc是复合模式,那么是由哪些设计模式组合的呢? 观察者设计模式:view和con ...

  10. mysql添加mcafee 审计插件

    插件源码地址https://github.com/mcafee/mysql-audit插件安装方法https://github.com/mcafee/mysql-audit/wiki/Installa ...