|
编程中国
|
业界新闻
|
技术文章
|
视频教程
|
下载频道
|
程序源码
|
个人空间
|
编程论坛
|
登录
注册
平板模式
论坛地图
帮助
编程论坛
→
.NET专区
→
C# 论坛
→ C#经典问题!!
我的收件箱(0)
全能ASP/PHP/ASP.NET主机,支持月付
专业
MSSQL
数据库空间,支持月付
专业
MySQL
数据库空间,支持月付
学习型 ASP/PHP/ASP.NET 主机
30
元/年
高端软件开发 = 年薪十万不是梦
赛孚耐:软件保护加密专家
身份认证令牌USB KEY
共有
897
人关注过本帖
标题:C#经典问题!!
waiting……
收藏
订阅
推荐
打印
Debugging
等级:新手上路
帖子:1
积分:112
注册:2008-1-15
楼主
C#经典问题!!
String a ="1234";
String c = "123"; c+="4";
Console.WriteLine((object)a==(object)c); //False
Console.WriteLine((object)a.Equals((object)c)); //True
Console.WriteLine(a==c); //True
Console.WriteLine(a.Equals(c)); //True
有谁详细解释一下四个bool值为什么是这样的原因
搜索更多相关主题的帖子:
object
Console
WriteLine
经典
True
2008-1-15 22:40
xxllbb
等级:新手上路
帖子:14
积分:254
注册:2006-7-10
第
2
楼
句柄不一样 比较的时候看你比较的是值还是句柄
如果是值就一样 如果是句柄就肯定不一样了
两个字符串创建的时候的地址是不一样的.
2008-1-15 23:43
andey
等级:高级会员
威望:
3
帖子:916
积分:9948
注册:2007-7-18
第
3
楼
关键是"=="和"Eqauls"的区别...
msdn == 葵花宝典!!!
QQ:122768959
2008-1-16 09:40
peach5460
来自:武汉
等级:中级会员
帖子:399
积分:4322
注册:2008-1-28
第
4
楼
object的比较
==两边是object的时候比较的是地址值
因为a和c不是一个对象,地址肯定不一样,所以==为假
eqauls是比较对象的内容所以真咯
如果写错了...不要愤青...
欢迎交流peach5460@gmail.com
QQ Group:61505403
2008-1-29 21:55
ChenMo
等级:版主
威望:
3
帖子:478
积分:5112
注册:2004-4-8
第
5
楼
int a = 3;
int b = 3;
if ( a == b ){} //a、b为值类型,比较其值是否相等
object c = (object)a; //装箱
object d = (object)b; //装箱
if ( c == d ){} //c、d为引用类型,比较其哈希码是否相等来判断是否为同一对象。
字符串本是隶属引用类型,但是看似比较特殊…
作用于字符串的操作符可能是被重载过或被特殊处理,仅属猜测,如有深究者可对此考究一番。
[
本帖最后由 ChenMo 于 2008-2-5 15:59 编辑
]
fsEditor 1.0.4(beta) by ChenMo,欢迎下载测试。
http://www.bccn.net/Soft/kfyy/c/200805/3298.html
2008-2-5 15:55
关于我们
|
广告合作
|
编程中国
|
清除Cookies
|
Archiver
|
WAP
|
TOP
编程中国
版权所有,并保留所有权利。鲁ICP备08000592号
Powered by
Discuz
, Processed in 0.056858 second(s), 9 queries.
Copyright©2004-2008, BCCN.NET, All Rights Reserved