黑马程序员技术交流社区
标题:
JAVA中的SPLIT问题
[打印本页]
作者:
z_one
时间:
2015-11-11 22:12
标题:
JAVA中的SPLIT问题
JAVA中我用split读取一串字符返回给一个数组,但是当我用数组判断的时候为什么无法判断,下面是代码
String str = "boo:and:foo";
String [] b=str.split(":");
if(b[0]=="boo"){
System.out.println("这个相同哦");
}
按说应该输出一个"这个相同哦",但是为什么没有输出
作者:
li3N
时间:
2015-11-12 10:29
楼主,我拿你的代码试了一次,发现把==改成equals就好了。
貌似可以这么解释,因为==是比较内存地址的,数组中的字符串b[0]位于堆内存,而直接给出的字符串"boo"是位于常量池的,俩内存地址不一样,比较结果是false。字符串这一块确实比较晕,看看楼下大神有没有什么好的解答吧。
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2