为什么String等式不起作用?

时间:2014-05-02 06:27:24

标签: java string debugging hashmap equality

我想测试这两个字符串是否相同,但我不确定我在哪里做错了。可能是因为HashMap?我怎样才能使这个“如果”工作?由于声誉的事我无法添加它的任何图像![调试模式显示 val [0] - >> “000”(** id = 52)****

private static String convert (final String s) {
    String temp = s;        
    final Iterator<String[]> sic = sections.iterator();
    while (sic.hasNext()) {
        final String[] val = sic.next();
        String a=val[0]; String b="000"; //val[0] is 000 and showed as "000" in debug mode as well.
        if(a.equals(b)){  //this must give a true
         val[0]="1003" ;} 

        temp = temp.replaceAll("\n(" + val[1] + ")\r?\n--*\r?\n",  val[0].length()>0 ? "\n\u25b4\u25ba"+val[0]+"\n$1\n": "\n\n\n"); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ //$NON-NLS-4$ //$NON-NLS-5$
    }

    return (temp + "\u25b4").replaceAll("\u25ba212(\n" + ratioRam +"\u25b4)","\u25ba222$1"); 
}

编辑: 我认为这里的部分并不那么重要,因为我们知道这部分的价值。如果章节很重要,那么Adding synonym words different code numbers - java。另外在调试模式中有一个 哈希,hash32,值,值 [0] - &gt; 0,对于[1] - &gt; 0,对于[2] ---&gt; 0

1 个答案:

答案 0 :(得分:0)

尝试

String a=val[0]; //Ensure value is 000 not OOO 
a = a.replaceAll("[\n\r]", "");
if(a.trim().equals(b.trim())){
 //toDO
}