我有以下字符串用于与引号和不带引号进行比较。但这两个字符串具有相同的内容。
String a="\"john\"";
String a1="john";
System.out.println(a+" "+a1);
if(a.equals(a1)){
System.out.println("ok");
}else{
System.out.println("not ok");
}
如果我运行上面的程序,我会得到“不正常”。但是除了引号之外,两个字符串都相等。 如何比较字符串中带引号和不带引号的情况?
最佳答案
因为字符串不一样。第一个是约翰,第二个是“约翰”,这是不同的。您需要在比较它们之前删除单引号:
replace("\"", ""); // apply on your Strings
所以它可以是这样的:
if (a.replace("\"", "").equals(a1.replace("\"", ""))) {
// equal
}
关于java - 带双引号的字符串比较,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19853457/