Java 示例 - 在列表中查找子列表

  • 问题描述

    如何在 List 中查找子列表?
  • 解决方案

    以下示例使用 indexOfSubList() 和 lastIndexOfSubList() 检查子列表是否存在于列表中并查找列表中子列表的最后一次出现。
    
    import java.util.*;
    public class Main {
       public static void main(String[] args) {
          List list = Arrays.asList("one Two three Four five six one three Four".split(" "));
          System.out.println("List :"+list);
          
          List sublist = Arrays.asList("three Four".split(" "));
          System.out.println("SubList :"+sublist);
          System.out.println(
             "indexOfSubList: " + Collections.indexOfSubList(list, sublist));
          
          System.out.println(
             "lastIndexOfSubList: " + Collections.lastIndexOfSubList(list, sublist));
       }
    }
    
  • 结果

    上面的代码示例将产生以下结果。
    
    List :[one, Two, three, Four, five, six, one, three, Four]
    SubList :[three, Four]
    indexOfSubList: 2
    lastIndexOfSubList: 7