Java - > 2列表与相同内容不匹配

时间:2018-04-27 17:22:56

标签: java list comparison

我有2个java列表

ArrayList<String> list1 = new ArrayList<String>();
ArrayList<String> list2 = new ArrayList<String>();

我将数据库中的一些数据加载到第一个数据库,从不同数据库加载到第二个数据库。

列表中的字符串看起来完全相同:

3441134 China Ap F
3441134 China Ap F

但是当我检查时:

if(list1.get(1).equals(list2.get(1))){
logger.info("true");
}
else{
logger.info("false")
}

我总是得到

  

有人可以说为什么?我查了一下白色空格也是一样。

1 个答案:

答案 0 :(得分:1)

我认为与字符编码有关,您可能在控制台和调试中看到相同的字符串,但在内部,由于编码,它们有一个额外的不可见字节。

试着看看:Invisible characters in Java Strings你会明白我在说什么。