黑马程序员——Java中equals和==的区别
来源:互联网 发布:淘宝网家私 编辑:程序博客网 时间:2024/06/03 02:02
------- <a href="http://www.itheima.com" target="blank">android培训</a>、<a href="http://www.itheima.com" target="blank">java培训</a>、期待与您交流! ----------
java中的数据类型,可分为两类:
1.基本数据类型,也称原始数据类型。byte,short,char,int,long,float,double,boolean
他们之间的比较,应用双等号(==),比较的是他们的值。
2.引用数据类型
当他们用(==)进行比较的时候,比较的是他们在内存中的存放地址,所以,除非是同一个new出来的对象,他们的比较后的结果为true,否则比较后结果为false。 JAVA当中所有的类都是继承于Object这个基类的,在Object中的基类中定义了一个equals的方法,这个方法的初始行为是比较对象的内存地 址,但在一些类库当中这个方法被覆盖掉了,如String,Integer,Date在这些类当中equals有其自身的实现,而不再是比较类在堆内存中的存放地址了。
String i = ‘abc’;
String j = new String(“abc”);
i!=j,但是i equals j;
第一个在栈中创建了一个引用,当i =‘abc’,程序会在缓冲池里面寻找值为abc的字符串,如果存在,a 就指向它,如果没有,就创建一个,再让a 指向它。
第二个在栈中创建一个引用j,再在内存中创建一个新的’abc’对象,它们虽然值相同,但是位置不同。
0 0
- 黑马程序员---- java中 equals 和 ==的区别
- 黑马程序员——关于java中equals和==的区别
- 黑马程序员——Java中equals和==的区别
- 黑马程序员——equals和==的区别
- 黑马程序员_java中equals和==的区别
- 黑马程序员——Java基础---关于equals和==的区别的理解
- 黑马程序员——Java面试题——equals和==的区别
- 黑马程序员——Java基础---equals和"=="的区别
- 黑马程序员——JAVA基础之 == 和equals区别
- 黑马程序员—C# equals与==的区别
- 黑马程序员----------equals和==的区别以及用法
- 黑马程序员-equals和==的用法以及区别
- 黑马程序员-==和equals的区别
- 黑马程序员---equals和"=="的区别
- 【黑马程序员】equals和==的区别
- 黑马程序员——"=="和 equals方法究竟有什么区别
- 黑马程序员----"=="和equals方法区别
- 黑马程序员——02几个例子说明equals与"=="的区别
- 5个最佳Android测试框架
- codeforces round# 303(div2 E)(思路图)
- 上下文菜单
- 执行 composer update 出现Warning: This development build of composer is over 60 days old.
- 网站性能、架构、优化总结
- 黑马程序员——Java中equals和==的区别
- java学习心得(给类一个空参的构造器)
- static链表模块练习
- vim选中字符复制/剪切/粘贴
- 用F340 GPIO做I2C
- vba 写文件和 打开网页获取源码
- 函数指针与转移表
- vi/vim使用进阶: 指随意动,移动如飞
- generator source code