[英]String comparison not working correctly
I'm having a problem with String comparison, while some words return the correct result others simply don't.. 我在使用String比较时遇到问题,而有些单词则返回正确的结果,而其他单词根本没有。
for (int s = 0; s < subjects.getLength(); s++) {
Element subject = (Element) subjects.item(s);
String sub = subject
.getElementsByTagName("name").item(0)
.getTextContent();
Log.d("Subject", getSubject() + "!A");
Log.d("Subject", sub + "!B");
Log.d("Subject", "equalsIC: " + String.valueOf(getSubject().equalsIgnoreCase(sub)));
Log.d("Subject", "Contains: " + String.valueOf(getSubject().contains(sub)));
Log.d("Subject", "Equals: " + String.valueOf(getSubject().equals(sub)));
Log.d("Subject", "ContentEqu: " + String.valueOf(getSubject().contentEquals(sub)));
Log.d("Subject", "Length A: " + String.valueOf(getSubject().length()) + "; Length B: " + String.valueOf(sub.length()));
if (getSubject().equalsIgnoreCase(subject
.getElementsByTagName("name").item(0)
.getTextContent())) {
Log.d("Subject", getSubject() + "Success !C");
The getSubject method is returning a String. getSubject方法返回一个字符串。 While this works perfect for "BK G3": 尽管这对于“ BK G3”非常适合:
D/Subject﹕ BK G3!A
D/Subject﹕ BK G3!B
D/Subject﹕ equalsIC: true
D/Subject﹕ Contains: true
D/Subject﹕ Equals: true
D/Subject﹕ ContentEqu: true
D/Subject﹕ Length A: 5; Length B: 5
D/Subject﹕ BK G3Success !C
It simply fails with "D G4": 它仅以“ D G4”失败:
D/Subject﹕ D G4!A
D/Subject﹕ D G4!B
D/Subject﹕ equalsIC: false
D/Subject﹕ Contains: false
D/Subject﹕ Equals: false
D/Subject﹕ ContentEqu: false
D/Subject﹕ Length A: 5; Length B: 5
I tried it with sub.trim(), but nothing changed.. 我用sub.trim()尝试过,但是什么都没有改变。
Thanks in advance. 提前致谢。
Edit 编辑
Debugging gives me the following information: 调试为我提供了以下信息:
sub = (java.lang.String@83000929)"D G4"
value = {char[5]@830092913560}
hashCode = 0
offset = 0
count = 5
((Activity_Add)this).subject = java.lang.String@830088265176)"D G4"
value = {char[59]@830080636976}
hashCode = 0
offset = 6
count = 5
Use 采用
sub.replaceAll("\\\\s+","")
instead of 代替
sub.trim();
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.