Java:的“==”和equals方法
2015-07-20 14:44
211 查看
关于 “==”:
“==”是我们常见一种比较运算符,作用是:比较两边的操作数是否相等,结果为false或true。比如:4 ==3 为false。
(1)等号两边是基本数据类型,比较基本数据类型变量的值
(2)等号两边是引用数据类型,比较引用数据类型变量的值,即内存地址,而不是该变量所指向对象的内容
而,
是因为s1和s2为同一个对象,指向堆内存中的同一区域。
关于equals:
(1)Object类中有一个equals方法,用于比较两个对象是否相等,而比较的是两个对象所在的内存地址,所以自定义类中,一般要覆盖Object类中的equals方法。
(2)String类中的equals方法,比较的是字符串对象的内容
(3)Arrays类中的equals方法,比较数组中对应的元素是否相等
(4)其他自定义类的equals方法,根基自定义的equals方法中的内容,作为比较的内容。
“==”是我们常见一种比较运算符,作用是:比较两边的操作数是否相等,结果为false或true。比如:4 ==3 为false。
(1)等号两边是基本数据类型,比较基本数据类型变量的值
(2)等号两边是引用数据类型,比较引用数据类型变量的值,即内存地址,而不是该变量所指向对象的内容
而,
是因为s1和s2为同一个对象,指向堆内存中的同一区域。
关于equals:
(1)Object类中有一个equals方法,用于比较两个对象是否相等,而比较的是两个对象所在的内存地址,所以自定义类中,一般要覆盖Object类中的equals方法。
(2)String类中的equals方法,比较的是字符串对象的内容
(3)Arrays类中的equals方法,比较数组中对应的元素是否相等
(4)其他自定义类的equals方法,根基自定义的equals方法中的内容,作为比较的内容。
相关文章推荐
- SpringMVC学习笔记(二) -- 提交数据至后台controller
- git常见的命令总结
- 《深入浅出struts2》--第二章,初识struts
- android studio导入eclipse或者 android studio工程文件的超简技巧
- Mac下配置JAVA_HOME
- eclipse未能识别我的手机
- spring MVC配置详解
- Java线程池总结
- HashMap底层实现(源码分析)
- Struts2自定义拦截器实例—登陆权限验证
- 百度Java研发面经100题 总结
- 使用Dom4j解析XML
- java 学习书籍-想精通java的必看
- Spring整合DWR comet 实现无刷新 多人聊天室
- [转]JAVA学习路线及推荐书籍
- java反射的补充:桥接方法以及Spring中一些工具类
- Spring MVC之@RequestParam @RequestBody @RequestHeader 等详解<转>
- 4种方法让SpringMVC接收多个对象 <转>
- spring的annotation-driven配置事务管理器详解
- spring quartz 每30分钟执行一次cronExpression表达式怎么写