java str.split()方法问题 急急急 在线等 谢谢啦
public class Transform{
public String transform(String a) {
String b=a;
//String c="98:0C:82:53:B8:3E";
if(b=="00:0f:e2:4f:0c:e6")
b="one";
else if(b=="ec:17:2f:ac:43:fa")
b="two";
else if(b=="84:74:2a:a2:d4:67")
b="three";
else if(b=="84:74:2a:a2:d4:e1")
b="four";
// else b=b;
return b;
}
}
上面是我定义的一个类
然后下面是调用的类里面的方法 content 里面的内容是 一个线程得到一个字符串"98:0C:82:9C:F2:83,2013-09-03 17:42:56:2510,84:74:2a:a2:d4:67,-46,00:0f:e2:4f:0c:e6,-58,0.67660064,10.723399"
String[] date = content.split(",");
Transform trans=new Transform();
String a=date[2];
String b=trans.transform(a);
System.out.println(date[2]);
输出结果是 84:74:2a:a2:d4:67, 为什么呢 按说应该是 three 呀!!
------解决方案--------------------问题就在你这个==。。请用equals
------解决方案--------------------好像是基本类型 == 比较内容
引用类型 == 比较引用的地址 不比较内容
equals 被String类重写 比较内容,通过查看源码可以查看的到。
下面有没有人对我的看法拍砖哪
------解决方案--------------------比较String的内容 用equals