首页 > 其他分享 >== 和 equals 比较的区别?

== 和 equals 比较的区别?

时间:2023-08-09 11:44:48浏览次数:30  
标签:String 区别 s2 s1 equals chs new 比较

让我看下面一个例子:

 char[] chs={'a','b','c'};
String s1=new String(chs);
String s2=new String(chs);
System.out.println(s1==s2);
System.out.println(s1.equals(s2));

我们定义了一个数组,众所周知,数组是new出来的一个对象,当我们执行第一行代码时,就已经把他放到了堆内存中,我们定义的s1,s2基于chs数组创建的两个字符串,这两个字符串创建时在堆内存中开辟了两个新的内存空间,两个值所在的地址传给了s1,s2,关系运算符==比较的是两个值的地址,适合用于基本数据类型和引用数据类型,而我们使用的是equals重写Object中的方法,他比较的是对象,所以会产生两种不同的结果。

翻译

搜索

复制

标签:String,区别,s2,s1,equals,chs,new,比较
From: https://www.cnblogs.com/weihaohome/p/17616444.html

相关文章

  • SQL中fetch_array()和fetch_row()的区别
    相同点:两个的作用都是把查询结果的第一行返回到一个数组中。不同点:fetch_row()是通过数字索引取值。$res=mysqli_query($con,$sql);//返回资源$arr=mysqli_fetch_row($res);//查询的第一行结果赋值给$arrprint_r($arr);print_r($arr[0]);fetch_arroc()是通过关键字......
  • setJmenubar与直接添加Jmenubar有什么区别
    在JavaSwing中,setJMenuBar()方法和直接添加JMenuBar有以下区别:setJMenuBar()方法:setJMenuBar()是JFrame类的方法,用于将JMenuBar组件设置为JFrame的菜单栏。通过调用setJMenuBar()方法,可以将一个已创建的JMenuBar组件关联到JFrame,使其成为窗口的菜单栏。使用这种方式,可以在......
  • 【JAVA】强引用、软引用、弱引用、幻象引用有什么区别?
    前言在Java语言中,除了原始数据类型的变量,其他所有都是所谓的引用类型,指向各种不同的对象,理解引用对于掌握Java对象生命周期和JVM内部相关机制非常有帮助。本篇博文的重点是,强引用、软引用、弱引用、幻象引用有什么区别?具体使用场景是什么?概述不同的引用类型,主要体现的是对象......
  • ETHERCAT转CANOPEN协议网关canopen和can区别
    1.产品功能JM-ECT-COP是自主研发的一款ETHERCAT从站功能的通讯网关。该产品主要功能是将ETHERCAT网络和CANOPEN网络连接起来。本网关连接到ETHERCAT总线中做为从站使用,连接到CANOPEN总线中做为主站使用。3.技术参数ETHERCAT技术参数网关做为ETHERCAT网络的从站......
  • TCP三次握手和四次挥手;OSI七层协议有哪七层,每层有哪些;TCP和UDP的区别?UDP用在哪里了?
    TCP三次握手和四次挥手;OSI七层协议有哪七层,每层有哪些;TCP和UDP的区别?UDP用在哪里了?TCP三次握手和四次挥手#tcp协议---》处于osi7层协议的传输层,可靠连接,使用三次握手,四次挥手保证了可靠连接,数据不会丢失三次握手(Three-WayHandshake):-SYN:SYN=1表示要建立连接-ACK:ACK=1......
  • [学习笔记] Switch语句使用“===”进行比较
    JS中,switch语句会使用恒等计算符(===)进行比较。如上所述,下列代码中因为x定义为字符串10,而case为数字10,因此将不会弹出“HelloWorld”:var x="10";switch(x){    case 10:alert("Hello");}实际应用时应注意这点。......
  • java多线程 sleep()和wait()的区别
    java多线程sleep()和wait()的区别作者:octobershiner(2篇文章)日期:十二月16,2011在11:58上午接触了一些多线程的东西,还是从java入手吧。相信看这篇文章的朋友都已经知道进程和线程的区别,也都知道了为什么要使用多线程了。这两个方法主要来源是,sleep用于线程控制,而w......
  • 光纤通信与无线电通信的区别有哪些?
    光纤通信和无线电通信是两种不同的通信方式,它们之间的区别如下:传输介质:光纤通信使用光纤作为传输介质,而无线电通信使用空气作为传输介质。传输距离:光纤通信的传输距离较短,一般在几十公里到几百公里之间,而无线电通信的传输距离较远,可以覆盖数千公里以上的范围。抗干扰能力:光纤通......
  • Siemens 西门子博途、经典wincc、经典SETP7的区别
    博途软件介绍:博途软件是西门子在2010年11月23日发布的一个野心勃勃的、号称“全集成自动化(TIA=TotalIntegratedAutomation,全集成自动化)”的软件系统,西门子声称该产品是业内首个采用统一工程组态和软件项目环境的自动化软件,使用户能够快速、直观地开发和调试自动化系......
  • 《面试1v1》Kafka与传统消息系统区别
    我是javapub,一名Markdown程序员从......