java -- 如何记住"=="与equals的区别?
来源:互联网 发布:看股票行情的软件 编辑:程序博客网 时间:2024/05/18 03:55
通俗的理解
下面文字主要摘自:知乎问答
==是看看左右是不是一个东西。equals是看看左右是不是长得一样。
术语来讲的区别:
1.==是判断两个变量或实例是不是指向同一个内存空间
equals是判断两个变量或实例所指向的内存空间的值是不是相同
2.==是指对内存地址进行比较
equals()是对字符串的内容进行比较
3.==指引用是否相同
equals()指的是值是否相同
补充:
4. == 可以用来比较基本类型。(int,double,等等)
5. equals()的存在,是为了让用户自己去定义所谓的相等。(标准在开发者心中)
代码示例
基本类型举例
int a = 1;int b =1;a==b;//真
String,对象,基本类型两面性
- string在”==”以及”equals()”规则上是一致的。
String str1 = "data";String str2 = "data";str1 == str2;//真str1.equals(str2);//真
对象类型
StringBuilder sb1 = new StringBuilder("hello");StringBuilder sb2 = new StringBuilder(sb1.toString());sb1 == sb2 //假sb1.equals(sb2)//假sb1.toString().equals(sb2.toString());//真【string类型会采用字符串匹配方法比较】
1 0
- java -- 如何记住"=="与equals的区别?
- Java ==与equals()的区别
- java equals与== 的区别
- java == 与 equals的区别
- java equals与== 的区别
- java equals 与 == 的区别
- Java “==”与“equals"的区别
- Java的==与equals区别
- java-==与equals的区别
- Java“==”与“equals()”的区别
- java ==与equals的区别
- 【java中==与equals的区别】java中==与equals的区别
- java中equals的用法,与“==”的区别
- Java的==与equals的区别
- Java中==与equals的区别(可以试下重写hashcode与equals方法)
- 看到一篇文章《==与equals()的区别》(java)
- java中的equals()与==的区别
- java中equals与==的区别
- jsp自定义标签的问题Unable to load tag handler class
- MySQL5.7MHA+MaxScale2.0构建高可用环境
- [Lintcode]Minimum Size Subarray Sum 和大于S的最小子数组
- elasticsearch基础及java编程
- 【jzoj4908】【NOIP2016提高组】【愤怒的小鸟】【状态压缩动态规划】
- java -- 如何记住"=="与equals的区别?
- mac使用Sublime + PlantUML高效地画图
- 2016年兰州交通大学校园选拔赛
- maven设定项目编码
- [入门-7] 基础类型之对象概述
- 安卓中响应式与交互式
- Linux环境下服务器利用组播来获取客户端IP
- 数字滤波器回顾与解析
- 浏览器对象模型BOM之location对象