StringBuffer s1 = new StringBuffer("a");

StringBuffer s2 = new StringBuffer("a");

s1.equals(s2)//为什么是false

String s1 = new String("a");

String s2 = new String("a");

s1.equals(s2)//为什么是true

其实很简单,我来总结一下。

一、String的equals方法是覆盖Object的,所以String a=new String("ss");String b=new String("ss"); 生成了两个对象,但是a.equals(b)=true,比较的是值。

二、StringBuffer的equals方法没有覆盖Object的方法,所以StringBuffer a=new StringBuffer("ss");StringBuffer b=new StringBuffer("ss");,生成了两个对象,

a.equals(b)=false,比较的是地址。

三、等号比较的是地址,String a = "a";String b=a;只生成了一个对象a==b true。

StringBuffer a=new StringBuffer("a");StringBuffer b = a; 也是生成一个对象a==b true。

四、String a="ss";String b="ss"; a.equals(b)=true a==b true因为也是一个对象。这是因为编译时只产生了一个对象"ss"。

String a=new String("ss");String b=new String("ss");a.equals(b)=true,没有疑问,a==b false。

因为a,b是在运行时才产生的对象,产生了2个对象。

总结来说 就是java 只对 string 的 equals 进行了重写. 只有 string 的值 才被引入字符串常量池

StringBuffer的equals相关推荐

  1. java中String、StringBuffer equals使用注意

    equals方法 我们知道每个类其基类都是Object,Object默认的equals方式是: public boolean equals(Object obj) {if (this == obj) ...

  2. Java中String 和StringBuffer的区别

    先看下面的这个例子,读懂这个例子,你就理解了. publicclass Test { publicstaticvoid stringReplace (String text) { text = tex ...

  3. 深入理解String、StringBuffer和StringBuilder类的区别

    Java提供了String.StringBuffer和StringBuilder类来封装字符串,并提供了一系列操作字符串对象的方法. 它们的相同点是都用来封装字符串:都实现了CharSequence接 ...

  4. Java快速扫盲指南

    本文面向 刚学完Java的新手们.这篇文章不讲语法,而是一些除了语法必须了解的概念. 将要去面试的初级工程师们.查漏补缺,以免遭遇不测. 注意: 本文未对GC方面作出介绍.想了解GC请看我的另一篇专栏 ...

  5. Java面试宝典系列之基础面试题String、变量、类与对象、集合类、SSH(一)

    作者:egg 邮箱:xtfggef@gmail.com 微博:http://weibo.com/xtfggef 博客:http://blog.csdn.net/zhangerqing(转载请说明出处) ...

  6. java面试必背知识点

    JAVA必背面试题和项目面试通关要点 一 数据库 1.常问数据库查询.修改(SQL查询包含筛选查询.聚合查询和链接查询和优化问题,手写SQL语句,例如四个球队比赛,用SQL显示所有比赛组合:举例2:选 ...

  7. java面试总结(第一天)

    临近大学毕业,出来试试找工作,学c#出身,半路出家java,做过几个ssh.stringMVC的项目.基础知识不太扎实,勿喷 以下是我面试过程中遇到的问题 ---------------------- ...

  8. Java校招笔试题-Java基础部分(五)

    导语   Java 面试题集2021版 Java基础部分五 47.String 和String Buffer的区别 48.StringBuffer和StringBuilder的区别 49.数组有没有l ...

  9. B1.Java基础部分一

    基础部分的顺序:基本语法,类相关的语法,内部类的语法,继承相关的语法,异常的语法,线程的语法,集合的语法,io 的语法,虚拟机方面的语法,其他.有些题来自网上搜集整理,有些题来自传智播客学员面试后的反 ...

最新文章

  1. c语言算法6,c语言6函数和算法.ppt
  2. 导入python库linux_Linux下Python安装PyMySQL成功,但无法导入的问题
  3. VL09 不能取消来自分散系统的货物移动
  4. QT的QCameraImageCapture类的使用
  5. 异步编程的 async/await
  6. c语言初始化字符串 函数 manment,[转载]3.09进程(C语言班最后一天的课程)
  7. 《Cracking the Coding Interview》——第3章:栈和队列——题目4
  8. php页面自分页刷新,详解PHP+AJAX无刷新分页实现方法
  9. Asp.net页面之间传递参数的几种方法荟萃
  10. ExtJS6-项目创建
  11. 基于arduino制作激光电子竖琴
  12. 致远项目管理SPM系统案例:华仁药业股份有限公司合同管理
  13. 用pdfminer把PDF文件转化为文本文件
  14. 五、C语言指针和数组
  15. M*LMM缩略图文件管理模式模块开发(一个含有listview和gridview浏览模式的文件管理器)
  16. oracle 拉里 网线通道,拉里.埃里森:Oracle云计算服务进入超速增长阶段
  17. 七、手写实现决策树算法
  18. 剖析Oculus Rift的Room Scale功能设计
  19. 供应链库存管理-柔性快反供应链
  20. mouseover和mouseout事件在鼠标经过子元素时也会触发

热门文章

  1. DPDK and XDP and ebpf
  2. js实现拼音模糊搜索
  3. python_day6_面向对象的介绍/构造函数/类变量和实例变量/析构函数/私有属性和私有方法/继承、多继承和继承实例/多态
  4. 2015 ACM Arabella Collegiate Programming Contest
  5. 电磁场与仿真软件(19)
  6. 阿里云的服务器,网站域名没有备案时为什么不可以访问?
  7. 对象不可达,一定会被垃圾收集器回收么?
  8. 从京东双11战报中,找到未来值得国产品牌看好的发展机遇
  9. 卫哲:阿里的中供铁军为什么能培养出滴滴程维?
  10. 仿小米天气预报未来几天趋势预报折线图