| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1472 人关注过本帖
标题:能不能利用这两个程序讲解一下==和equals的区别?
只看楼主 加入收藏
chengsencs
Rank: 1
等 级:新手上路
帖 子:109
专家分:0
注 册:2006-7-24
收藏
 问题点数:0 回复次数:21 
能不能利用这两个程序讲解一下==和equals的区别?

public class C1
{
static String abc = "abc"; static String def = "def";
public static void main(String[] args)
{
if ( (abc + def).equals("abcdef") )
System.out.println("a");
else
System.out.println("b");
}
}

×××××××××××××××××××××××
public class C2
{
static String abc = "abc"; static String def = "def";
public static void main(String[] args)
{
if ( (abc + def) == "abcdef" )
System.out.println("a");
else
System.out.println("b");
}
}

第一个输出为a,第二个输出为b

能不能详细解释一下==和equals在做比较时有什么不同?还有就是说equals继承了一个来自java.lang.Object的方法,这是什么意思?
谢谢。

搜索更多相关主题的帖子: equals String static 讲解 
2006-08-13 23:40
NiceGirl
Rank: 2
等 级:新手上路
威 望:4
帖 子:909
专家分:0
注 册:2006-6-18
收藏
得分:0 
==比较引用
Object中的equals比较的也是引用,在String和一些包装类中被重写,比较的是对象的实际内容

曾经以为百般艰难,蓦然回首,才发现已飞渡千山。。!
2006-08-14 00:02
chengsencs
Rank: 1
等 级:新手上路
帖 子:109
专家分:0
注 册:2006-7-24
收藏
得分:0 
能不能解释一下第二个为什么输出是b?
“==比较的是引用”不是很懂,这里的引用指的是什么?
谢谢。
2006-08-14 00:14
无理取闹
Rank: 9Rank: 9Rank: 9
等 级:贵宾
威 望:53
帖 子:4264
专家分:0
注 册:2006-7-26
收藏
得分:0 
引用就是地址呗

win32汇编
病毒 加密
目前兴趣所在
2006-08-14 00:21
走火
Rank: 1
等 级:新手上路
帖 子:426
专家分:0
注 册:2005-12-28
收藏
得分:0 
引用就是产生一个对象时的首地址(可以理解时装对象的位置).
这个一般靖况下是不同的.
不过可以把地址传给一个变量,这时就相同了.
String a="",b="";
a=b; //把b的位置传给a,这时a,b指向的位置都是b了.

==对非对象的数据比较的是其值.
如 int a=3,b=3;
a==b 就为true
对对象时就是比较他们的地址.



我是一只小菜鸟,请大家多多照顾! QQ 87135637
2006-08-14 06:46
sayid
Rank: 1
等 级:新手上路
帖 子:38
专家分:0
注 册:2006-7-3
收藏
得分:0 

说的更白点其实object的equals用的就是==比较,只是在String 里equals被重写了


2006-08-14 10:40
xudeliang
Rank: 1
等 级:新手上路
帖 子:2
专家分:0
注 册:2006-8-14
收藏
得分:0 
对于实例:==是引用相同,即地址。
equals:你所举例是。含有字符串相等。
2006-08-14 13:51
lt2046
Rank: 1
等 级:新手上路
帖 子:45
专家分:0
注 册:2006-7-21
收藏
得分:0 

== 比较的是对象的地址
equals :比较对象的内容


2006-08-14 22:15
liuzhanjun
Rank: 1
等 级:新手上路
帖 子:20
专家分:0
注 册:2006-8-18
收藏
得分:0 
= =判断是否指向同一内存地址
equals判断内容是否相同

爱生活——爱编程~!

本人Email:001200@
2006-08-18 18:43
wxhwjsw
Rank: 1
等 级:新手上路
帖 子:274
专家分:0
注 册:2006-6-15
收藏
得分:0 
楼上的讲的不对的。。。。。

一个人的快乐,不是因为他拥有的多,而是因为他计较的少.
2006-08-18 20:35
快速回复:能不能利用这两个程序讲解一下==和equals的区别?
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.028394 second(s), 9 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved