如何检查List是否按顺序包含多个元素

问题描述 投票:0回答:1

假设我有一个列表,

Arrays.asList("A","B","C","D");

Java 中是否有一种方便的方法可以让我检查此列表以查看元素 C 和 D 是否按该顺序在此列表中?

大致如下:

Collections.containsOrderedElements(list,"C","D");
Collections.containsOrderedElements(list,"A","B","C");

上述方法将返回 true,但是

Collections.containsOrderedElements(list,"A","C");

不会吗?

java list arraylist
1个回答
13
投票

java.util
包中有一个方法可以帮助你(
Collections.indexOfSubList(sourceList, subList)
):

List<String> list = Arrays.asList("A", "B", "C", "D");
System.out.println(Collections.indexOfSubList(list, Arrays.asList("C", "D")) >= 0);
System.out.println(Collections.indexOfSubList(list, Arrays.asList("A","B","C")) >= 0);
System.out.println(Collections.indexOfSubList(list, Arrays.asList("A", "C")) >= 0);

打印:

true
true
false
© www.soinside.com 2019 - 2024. All rights reserved.