Java.util.Collections 类

java.util.Collections.lastIndexOfSubList() 方法返回指定目标列表最后一次出现的起始位置指定的源列表,如果没有出现这种情况,则为 -1。

语法

public static int  lastIndexOfSubList(List<?> source, 
                                      List<?> target)

这里,T 是集合中元素的类型。

参数

source 指定要在其中搜索最后一次出现的目标的列表。
目标 指定要搜索的列表作为源的子列表。

返回值

返回指定源列表中最后一次出现的指定目标列表的起始位置,如果没有出现则返回-1。

异常

不适用。

示例:

在下面的示例中,java.util.Collections.lastIndexOfSubList() 方法用于查找给定列表中指定列表最后一次出现的起始位置。

import java.util.*;

public class MyClass {
  public static void main(String[] args) {
    //创建列表对象
    List<Integer> srclist = new ArrayList<Integer>();
    List<Integer> tgtlist = new ArrayList<Integer>();

    //填充 srclist
    srclist.add(10);
    srclist.add(20);
    srclist.add(30);
    srclist.add(40);
    srclist.add(20);
    srclist.add(30);

    //填充 tgtlist
    tgtlist.add(20);
    tgtlist.add(30);

    //打印srclist
    System.out.println("srclist contains: " + srclist);  

    //查找tgtlist在srclist中的起始位置
    int index = Collections.lastIndexOfSubList(srclist, tgtlist);
    System.out.println("Target list starts at: " + index); 
  }
}

上述代码的输出将是:

srclist contains: [10, 20, 30, 40, 20, 30]
Target list starts at: 4