java中的字符串比较解决方案不起作用
我知道这个问题已经被问到了极点,但我已经尝试了所有的解决方案,我的if语句仍然无法执行。。 我的代码是这样的:java中的字符串比较解决方案不起作用,java,string,Java,String,我知道这个问题已经被问到了极点,但我已经尝试了所有的解决方案,我的if语句仍然无法执行。。 我的代码是这样的: String s = "Something*like*this*"; String[] sarray = s.split("\\*"); for(int i = 0; i < sarray.length; i++) { if(sarray[i].equals("this")) { //do something } } String s=“像这样的东西”; 字符
String s = "Something*like*this*";
String[] sarray = s.split("\\*");
for(int i = 0; i < sarray.length; i++) {
if(sarray[i].equals("this")) {
//do something
}
}
String s=“像这样的东西”;
字符串[]sarray=s.split(\\*”;
for(int i=0;i
如有任何建议,将不胜感激。此处将执行if
在drJava交互窗格(或您的fav IDE窗格)中测试这一点,检查各个部分(以检查它们是否工作)
这确实如预期的那样有效
for (String token : "Something*like*this*".split("\\*")) {
if (token.equals("this")) {
System.out.println("Found this");
}
}
我看不出这个代码有任何问题。尝试打印出循环中的数组元素。还要检查伪空白字符。可能您的输入字符串与本示例中使用的不完全相同。考虑到有些字符是不可打印的(所以在编辑器中和控制台上通常看不到它们)。您的发布代码对我来说很好。发布您用于测试代码的实际SSCCE。它按预期工作。你的环境是什么?java版本等。你在使用线程吗?我在使用eclipse。问题在于我在安卓设备上从永久存储中存储和检索s的方式。我改为使用sql数据库,一切正常。感谢您的评论。很遗憾,它没有起作用。通过混淆您的解决方案,我得出结论,我从何处获得“类似于此的东西”(我不创建它)存在问题,即使输出时看起来很好。我认为重组将解决我的问题。非常感谢。
for (String token : "Something*like*this*".split("\\*")) {
if (token.equals("this")) {
System.out.println("Found this");
}
}