字符串比较:equalsIgnoreCase失败,但==通过

时间:2018-07-15 10:51:25

标签: string comparison stringbuilder

我尝试过:

String test = "racecary";

StringBuilder stringBuilder = new StringBuilder(test);
System.out.println(stringBuilder.reverse()+" -------------");
if (stringBuilder.reverse().toString().equalsIgnoreCase(test)) {
    System.out.println("Pass");
}else {
    System.out.println("Fail");
}

即使我拼错了racecar,它也会始终打印通过,但是当我使用==代替.equalsIgnoreCase时,它会通过。

我做错什么了吗? 我已经经历了下面的问题,但是没有得到答案。

JAVA .equalsIgnoreCase not working

JAVA .equalsIgnoreCase not working

1 个答案:

答案 0 :(得分:1)

StringBuilder.reverse()修改构建器。测试打印输出导致字符串反转两次,使其保持不变。摆脱打印输出,代码将按预期工作。