我有两个由字符串组成的arraylists。我想比较它们,如果相同则返回true,否则返回false。
实现这一目标的最短和最理想的方法是什么?
编辑:两个列表的顺序应该相同。
答案 0 :(得分:3)
尝试,
boolean isEqual= Arrays.deepEquals(list.toArray(), list2.toArray());
这也会true
返回Collection
List<String[]>
,例如List<String[][]>
或list.containsAll(list2)
{{1}}将会失败。
答案 1 :(得分:1)
你可以
return list1.equals(list2);
答案 2 :(得分:1)
如果您真的想检查它们是否包含完全相同的项目(并且您不关心重复项目),那么您可以将两者都转换为集合:
return new HashSet<T>(list).equals(new HashSet<T>(list2))
答案 3 :(得分:0)
如果您想知道第一个列表中的每个元素是否都在第二个列表中,您只需使用containsAll()
方法。