也许最简单的解决方案是使用两个List<List<String>>
s代替.假设使用的List
实现扩展AbstractList
,using equals
将为您提供所需的行为.从以下文档AbstractList.equals
:
将指定对象与此列表进行比较以获得相等性.返回
true
当且仅当该指定的对象也是一个列表,两个列表具有相同的大小,并且在两个列表元素的所有相应的对是相等.(两个元素e1
,e2
如果相等则相等(e1==null ? e2==null : e1.equals(e2))
.)换句话说,如果两个列表包含相同顺序的相同元素,则它们被定义为相等.
您可以轻松地String[]
在一个使用List<String>
扩展的瘦实现中包装.AbstractList
Arrays.asList
编辑:这是一个例子:
String[] array1 = {"1", "2", "3"};
String[] array2 = {"4", "7"};
String[] array3 = {"1", "2", "3"};
String[] array4 = {"4", "7"};
List<List<String>> lst1 = new ArrayList<>();
lst1.add(Arrays.asList(array1));
lst1.add(Arrays.asList(array2));
List<List<String>> lst2 = new ArrayList<>();
lst2.add(Arrays.asList(array3));
lst2.add(Arrays.asList(array4));
System.out.println(lst1.equals(lst2)); //prints true
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
5863 次 |
最近记录: |