Class ListUtils

java.lang.Object
ubic.gemma.core.util.ListUtils

public class ListUtils extends Object
Utilities and algorithms for List.
Author:
poirigui
  • Constructor Details

    • ListUtils

      public ListUtils()
  • Method Details

    • indexOfElements

      public static <T> Map<T,Integer> indexOfElements(List<T> list)
      Get a mapping of element to their first occurrence in a List.

      This of this as an efficient way of calling List.indexOf(Object) in a loop, since it will reduce the complexity to O(n) instead of O(n^2).

      I couldn't find this algorithm in Guava nor Apache Collections, but if you do, let me know!

    • indexOfAllElements

      public static <T> Map<T,int[]> indexOfAllElements(List<T> list)
    • indexOfCaseInsensitiveStringElements

      public static Map<String,Integer> indexOfCaseInsensitiveStringElements(List<String> list)
      Get a case-insensitive mapping of string elements to their first occurrence in a List.
      See Also:
    • padToNextPowerOfTwo

      public static <T> List<T> padToNextPowerOfTwo(List<T> list, T elementForPadding)
      Pad a collection to the next power of 2 with the given element.
    • pad

      public static <T> List<T> pad(List<T> list, T elementForPadding, int size)
      Pad a collection with the given element.
    • batch

      public static <T> List<List<T>> batch(List<T> list, int batchSize)