关系运算符 == [50分工大家讨论] String str;if (str == null)if (str.compareTo("temp") == 0)== 是比较地址 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 一般不用==判断字符串。String a = "hello";String b = "hello";String c = a;a.equals(b) //truea.equals(c) //truec.equals(b) //truea == b //falsea == c //truec == b //false下面三个比较有实际意义吗? compareTo、equals,那么何时该用== .. 建议先看看书吧...compareTo 是比较两个字符串的大小的...equals 不是String特有的,是任何一个java类都有的方法,它唯一的用处就是比较两个类是否逻辑相等...== 是比较地址的,没什么实际应用意义,除非是 基本类型的比较 ------------------------------------------------------ 我们还年轻牛奶会有的奶牛也会有的 可天天在 csdn 混这些会有吗 ?? 对于楼上的例子,a == b a == c c == b都为true ..但只是因为String类特殊 :) ------------------------------------------------------ 我们还年轻牛奶会有的奶牛也会有的 可天天在 csdn 混这些会有吗 ?? String 的对象是一个固定的内存地址由java虚拟机分配,如果你想用==来判断两个String内容相同是错误的,因为他们被封装在不同的对象里面而对象存放的内存地址不同!如果你自己写一个class用来判断里面的内容是否相同,你可以自己复写equals方法,这样就明白你的问题也学会了很多东西,看<java编程思想>,对这个问题有深入的讨论. 不过String是特殊类 !!!String a = "a";String b = "a";String c = new String("a");此时a==b 为true ,a==c 为false ;a==c为false很好理解,因为c 是 new 出来的,开辟了一个新内存地址,来存储"a"a==b为true .因为在执行 b="a"的时候,系统会自动寻找内存,找到已经存在的"a"后,把这个地址就赋给了b了,于是b和a就指向了同一个地址... ------------------------------------------------------ 我们还年轻牛奶会有的奶牛也会有的 可天天在 csdn 混这些会有吗 ?? 线程池的问题啊~~~~~~~~不知道有没有人知道啊!同时祝大家节日快乐啊。 求用JAVA SWING 画出一个这样的界面 序列化问题 弹出 提示对话框 提示密码输入错误,是用那个组件? 在线等 关于DB中枚举型数据的显示问题 重载loadclass方法实现了动态类加载 简单的字符数组问题,请大虾指教~~在线急等 程序中的一个奇怪的错误 很简单的JAVA的2个初级问题 各位, 有没有用java 做过代理程序? 请教Unicode的编码格式 jsp and bean???
String a = "hello";
String b = "hello";
String c = a;
a.equals(b) //true
a.equals(c) //true
c.equals(b) //true
a == b //false
a == c //true
c == b //false
下面三个比较有实际意义吗?
compareTo 是比较两个字符串的大小的...
equals 不是String特有的,是任何一个java类都有的方法,它唯一的用处就是比较两个类是否逻辑相等...
== 是比较地址的,没什么实际应用意义,除非是 基本类型的比较 ------------------------------------------------------
我们还年轻牛奶会有的奶牛也会有的
可天天在 csdn 混这些会有吗 ??
a == b
a == c
c == b
都为true ..但只是因为String类特殊 :)
------------------------------------------------------
我们还年轻牛奶会有的奶牛也会有的
可天天在 csdn 混这些会有吗 ??
String a = "a";
String b = "a";
String c = new String("a");此时a==b 为true ,a==c 为false ;
a==c为false很好理解,因为c 是 new 出来的,开辟了一个新内存地址,来存储"a"
a==b为true .因为在执行 b="a"的时候,系统会自动寻找内存,找到已经存在的"a"后,把这个地址就赋给了b了,于是b和a就指向了同一个地址...
------------------------------------------------------
我们还年轻牛奶会有的奶牛也会有的
可天天在 csdn 混这些会有吗 ??