C#中equals方法和==的区别
2024-09-05 01:54:51
Msdn中对equals方法的解释是:确定指定的对象是否等于当前对象。
Equals方法是比较对象的内容,而==则是比较整个对象是否相等。
Equals方法判断的是堆中的值,而==则判断的是堆栈中的值。
C#提供值类型和引用类型两种。
Equals是用来判断两个对象(除string类型外)是否相等,相等的条件是:值,地址,引用全相等,因为string类重写了equals方法,所以当string类型的对象用equals方法比较时只比较两个对象的值,相等返回true。这时就和==含义相同。而且对于值类型来说,equals方法和==都是比较值是否相同,所以这两个都可以使用。
对于引用类型来说,在堆栈中存储的是对象的地址,那么==就是比较两个地址是否相等,即是否指向同一个对象;equals方法则是比较两个对象在堆中的数据是否一样,即两个引用类型是否是同一对象的引用。
最新文章
- 使用httpclient 调用selenium webdriver
- [.net 面向对象程序设计进阶] (14) 缓存(Cache) (一) 认识缓存技术
- 第54课 Qt 中的多页面切换组件
- 【原】十张javascript思维导图
- Linux ftp 使用
- 如何提升 service 等级,不被kill(整合)
- eclipse报错 :java was started but returned exit code=13
- 淘宝(阿里百川)手机客户端开发日记第三篇 SlidingPaneLayout实现侧滑菜单
- .net分页控件webdiyer:AspNetPager
- java web判断是否登录
- protel99与win7兼容问题的解决方案
- tcp协议栈
- 2、微信小程序之弹幕的实现(无后台)
- 创建一个可用的简单的SpringMVC项目,图文并茂
- 多工程联编,cocopods的使用
- java编程中常用英语单词
- ElasticSearch 使用小结
- asp.net—自定义轻量级ORM
- Cloudstack安装(二)
- Plot Candlestick Charts in Research of quantopian
热门文章
- html简单样式
- SQL Server 数据类型 Decimal介绍
- Js之Navigator对象
- LFS,编译自己的Linux系统 - 包和补丁
- Pseudoprime numbers(POJ 3641 快速幂)
- Sumsets(POJ 2229 DP)
- 关于C语言静态链接的个人理解,欢迎指正
- android style=";@[package:]style/style_name"; ----------styles.xml
- [ASP.NET] 图形验证码破解-以简单图形为例
- android 中FragmentActivity中模拟返回键返回上一个Activity效果