Java Collections工具類

導包:java.util.Collections

  • public static <T extends Comparable<? super T>> void sort(List list)

    對 list 進行排序

  • public static void shuffle(List<?> list)

    對 list 進行隨機排序

  • public static <T extends Object & Comparable<? super T>> T max(Collection<? extends T> coll)

    返回 collection 中的最大值

  • public static <T extends Object & Comparable<? super T>> T min(Collection<? extends T> coll)

    返回 collection 中的最小值

  • public static int binarySearch(List<? extends Comparable<? super T>> list, T key)

    從 list 中使用二分查找元素,返回元素下標

    前提是 list 已排序,不存在時返回負數,表示該元素最有可能存在的位置索引

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

    查找子 list 在源 list 中首次出現的位置

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

    查找子 list 在源 list 中最後一次出現的位置

  • public static boolean replaceAll(List list, T oldVal, T newVal)

    替換 list 中指定的元素,若元素存在返回 true,否則返回 false

  • public static void reverse(List<?> list)

    反轉 list 中的元素的順序

  • public static void rotate(List<?> list, int distance)

    list 中的元素向後移動 distance 個位置,後面的元素出現在 list 開始的位置

    示例:

    操作前

    [Sunday, Saturday, Friday, Thursday, Wednesday, Tuesday, Monday]

    操作後

    [Wednesday, Tuesday, Monday, Sunday, Saturday, Friday, Thursday]

  • public static void copy(List<? super T> dest, List<? extends T> src)

    將 src list中的元素複製到 dest list 中,並覆蓋相應索引位置的元素

  • public static void swap(List<?> list, int i, int j)

    交換 list 中指定元素的位置

  • public static void fill(List<? super T> list, T obj)

    使用 obj 替換 list 中的所有元素

  • public static List nCopies(int n, T o)

    生成一個指定大小與內容的 list

  • public static Enumeration enumeration(final Collection c)

    爲 collection 生成一個 Enumeration

    示例:

    List<String> list = Arrays.asList("I love Java!".split(" "));
    System.out.println(list);
    Enumeration<String> e = Collections.enumeration(list);
    while (e.hasMoreElements()) {
    	System.out.println(e.nextElement());
    }
    

    輸出:

    [I, love, Java!]
    I
    love
    Java!
    
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章