==运算符和equals()方法

面试题:==equals的区别
一、回顾“==”的使用
1.可以使用在基本数据类型变量和引用数据类型变量中
2.如果比较的是基本数据类型变量:比较两个变量保存的数据是否相等(不一定类型相同)
如果比较的是引用数据类型变量,则比较的是两个变量的地址值是否相同。
注意:使用"=="符号时,必须保证符号左右两边变量类型一致(一个基本,一个引用,则编译不通过)
3.String的内容存在常量池中,所以String可以用==来比较。

String a="AA";
String b="BB";
String c=new String("AA");
System.out.println(a==b);

此时的输出是true,因为a和b的内容相同,在常量池中的地址也就相同。
但a==c就是false,因为a在常量池,c在堆空间中。
二、equals()方法的使用
1.是一个方法,而非运算符
2.只能适用于引用数据类型
3.Object类中equals()的作用和==的作用相同:即比较两个对象的地址值是否相同
4.像String、Date、File、包装类等都重写了Object类中的equals()方法。重写以后,比较的不是两个引用的地址是否相同,而是比较两个对象的“实体内容”是否相同。
5.通常情况下,我们自定义的类如果使用equals()的话,也通常是比较两个对象的实体内容是否相同。此时我们需要对Object类中的equals()方法进行重写。
重写的原则:比较两个对象的实体内容是否相同。
三、怎么快速重写equals()
和getter、setter一样,用generate直接生成。
了解即可:

toString()方法

  1. 当我们输出一个对象的引用时,实际上就是调用当前对象的toString()
  2. toString()会返回类名+@+地址(该地址是虚拟的,不是真实内存地址)
  3. 像String、Date、File、包装类等都重写了Object类中的toString()方法。使得在调用对象的toString()时,返回“实体内容”信息
  4. 自定义类也可以重写toString()方法,当调用此方法时,返回对象的“实体内容”
  5. 也可以用IDEA的generate自动生成toString()。

面向对象12:==运算符和equals()方法、toString()方法相关推荐

  1. java中Object类的hashCode和equals及toString方法。

    java中的hashcode.equals和toString方法都是基类Object的方法. 首先说说toString方法,简单的总结了下API说明就是:返回该对象的字符串表示,信息应该是简明但易于读 ...

  2. java之Equals和toString方法

    java之Equals和toString方法 Equals方法 Equals方法声明格式 public boolean equals(Object obj){ return (this == obj) ...

  3. 5.toString()方法:toString()方法有什么作用???

    5.toString()方法:toString()方法有什么作用??? 学习:第3遍 1. toString()方法有什么作用??? toString()将对象转换为字符串 如果没有重写该方法 默认返 ...

  4. java比较字符引用地址_java中的比较运算符== 与 equals()方法

    初学JAVA的时候对这两种比较方式也有疑惑,趁着现在整理一下自己的理解. JAVA中变量分为两类,一类是值类型,它储存的是变量真正的值,比如基础数据类型,值类型储存在内存的栈中:一类是引用类型,他们储 ...

  5. equals, hashCode, toString方法重写,深入探究equals

    首先是超类Employee: package chapter5_inheritance.equals;import java.time.LocalDate; import java.util.Obje ...

  6. 研究一下valueOf与toString方法

    基本上,所有JS数据类型都拥有valueOf和toString这两个方法,null除外.它们俩解决javascript值运算与显示的问题. JavaScript 的 valueOf() 方法 valu ...

  7. 1.3.1 Object类 equals,hashMode,toString重写, 包装类的装拆箱, 数学处理类

    &&&&&总结&&&&& 1.常用的包(熟悉) lang , util , io , net , sql ... 2.O ...

  8. java的知识点11——面向对象的三大特征之一继承、instanceof 运算符、方法的重写override、Object类基本特性、toString方法

    面向对象的三大特征:继承.封装.多态 继承的实现 继承让我们更加容易实现类的扩展.子类是父类的扩展 使用extends实现继承 package cn.sxt;public class Test {pu ...

  9. Java面向对象之object类自带的方法解析(equals与==、toString方法、instanceof方法、参数传递问题)

    一.equals与== 1.简单说明 ==:是用来判断两个变量.对象是否相等(数值.内存地址): equals:用来判断两个对象是否相等,可以通过自己重写equals方法的逻辑,使其从类的从很多个角度 ...

  10. Java笔记:包装类、toString()方法、单例类、比较(==和equals方法)

    1.包装类 1)包装类为基本数据类型提供了相应的引用数据类型. (基本数据类型-包装类) btye-Byte,char-Character,short-Short,float-Float int-In ...

最新文章

  1. linux各种误删文件恢复方法(经典强推)
  2. OpenCV使用GDAL读取地理空间栅格文件
  3. Go 函数的 Map 型参数,会发生扩容后指向不同底层内存的事儿吗?
  4. DataWorks调度配置最佳实战
  5. 如何用ASP读写TXT文本文件中的内容
  6. selenium IDE Chrome下载安装与使用
  7. 提升Transformer在不平稳时间序列预测上效果的方法
  8. Java微服务面试题
  9. FreeSWITCH 放音相关APP/API
  10. Hibernate2 参考文档
  11. 2016中国大数据市场研究报告
  12. C盘Temp文件夹的内容可以删掉
  13. 我也来说说“自学IT能走多远”
  14. matlab将空间描述转变为约当阵,matlab求约当标准型
  15. 生如蝼蚁当立鸿鹄之志,命薄似纸应有不屈之心,乾坤未定,你我都是黑马!(祝大家飞黄腾达前程似锦)
  16. Visual Studio2019完全卸载方法
  17. WordPress 的安装部署
  18. 8b_10b_coder 笔记
  19. 记一次个人博客被刷恶意评论的分析与解决
  20. C/C++:写代码时将数组放在main函数里面还是外面的区别

热门文章

  1. 踩坑事件:windows操作系统下的eclipse中编写SparkSQL不能从本地读取或者保存parquet文件
  2. 如何把握好 transition 和 animation 的时序,创作描边按钮特效...
  3. Cloudera Manager 安装 CDH5.x 心得
  4. 爬虫入门到精通-headers的详细讲解(模拟登录知乎)
  5. CUDA入门(六) 异步并行执行解析
  6. grid@m3#39;s password: Permission denied, please try again.
  7. [CTO札记]李彦宏:《领导者的心态——Best of the best》
  8. 迷你博客突然走红 至今尚无商业模式
  9. AJAX.NET用户开发指南
  10. redis九大数据类型数据结构及底层源码