Class Collections3

java.lang.Object
cn.xuanyuanli.core.util.Collections3

public class Collections3 extends Object
集合工具类。区别于jdk的Collections和guava的Collections2
Author:
John Li
  • Constructor Details

    • Collections3

      public Collections3()
  • Method Details

    • extractToListString

      public static List<String> extractToListString(Collection<?> collection, String propertyName)
      提取集合中的对象的一个属性(通过Getter函数), 组合成List<String>.
      不同于Collections3,这里返回String集合
      Parameters:
      collection - 来源集合.
      propertyName - 要提取的属性名.
      Returns:
      Listinvalid input: '<'String>
    • getOne

      public static <T> T getOne(Collection<T> coll, String fieldName, Object value)
      根据条件,从集合中取出一个
      Type Parameters:
      T - 泛型
      Parameters:
      coll - 集合
      fieldName - 字段名
      value - 字段值
      Returns:
      Collections3
    • getPart

      public static <T> List<T> getPart(Collection<T> coll, String fieldName, Object value)
      根据条件,从集合中取出符合条件的部分
      Type Parameters:
      T - 泛型
      Parameters:
      coll - 集合
      fieldName - 字段名
      value - 字段值
      Returns:
      Listinvalid input: '<'Collections3>
    • toDiffArray

      public static String[] toDiffArray(String[] s)
      字符串数组去重
      Parameters:
      s - 年代
      Returns:
      String
    • extractToMap

      public static <T> Map<Object,Object> extractToMap(Collection<T> collection, String keyPropertyName, String valuePropertyName)
      提取集合中的对象的两个属性(通过Getter函数), 组合成Map.
      Type Parameters:
      T - 泛型
      Parameters:
      collection - 来源集合.
      keyPropertyName - 要提取为Map中的Key值的属性名.
      valuePropertyName - 要提取为Map中的Value值的属性名.
      Returns:
      Mapinvalid input: '<'Object, Object>
    • extractToList

      public static <T> List<T> extractToList(Collection<?> collection, String propertyName)
      提取集合中的对象的一个属性(通过Getter函数), 组合成List.
      Type Parameters:
      T - 泛型
      Parameters:
      collection - 来源集合.
      propertyName - 要提取的属性名.
      Returns:
      Listinvalid input: '<'Collections3>
    • extractToList

      public static <T> List<T> extractToList(Collection<?> collection, String propertyName, Class<T> expectType)
      提取集合中的对象的一个属性(通过Getter函数), 组合成List.
      Type Parameters:
      T - 泛型
      Parameters:
      collection - 来源集合.
      propertyName - 要提取的属性名.
      expectType - 期望类型
      Returns:
      Listinvalid input: '<'Collections3>
    • extractToString

      public static String extractToString(Collection<?> collection, String propertyName, String separator)
      提取集合中的对象的一个属性(通过Getter函数), 组合成由分割符分隔的字符串.
      Parameters:
      collection - 来源集合.
      propertyName - 要提取的属性名.
      separator - 分隔符.
      Returns:
      String
    • isEmpty

      public static boolean isEmpty(Collection<?> collection)
      判断集合是否为空.
      Parameters:
      collection - 集合
      Returns:
      boolean
    • isEmpty

      public static boolean isEmpty(Map<?,?> map)
      判断Map是否为空.
      Parameters:
      map - map
      Returns:
      boolean
    • isNotEmpty

      public static boolean isNotEmpty(Collection<?> collection)
      判断集合是否为非空.
      Parameters:
      collection - 集合
      Returns:
      boolean
    • union

      public static <T> List<T> union(Collection<T> a, Collection<T> b)
      返回a+b的新List.
      Type Parameters:
      T - 泛型
      Parameters:
      a - 一个
      b - b
      Returns:
      Listinvalid input: '<'Collections3>
    • subtract

      public static <T> List<T> subtract(Collection<T> a, Collection<T> b)
      返回a-b(集合a中有,而b中没有)的新List.
      Type Parameters:
      T - 泛型
      Parameters:
      a - 一个
      b - b
      Returns:
      Listinvalid input: '<'Collections3>
    • intersection

      public static <T> List<T> intersection(Collection<T> a, Collection<T> b)
      返回a与b的交集的新List.
      Type Parameters:
      T - 泛型
      Parameters:
      a - 一个
      b - b
      Returns:
      Listinvalid input: '<'Collections3>
    • enumerationToList

      public static <T> List<T> enumerationToList(Enumeration<T> enumeration)
      枚举列表
      Type Parameters:
      T - 泛型
      Parameters:
      enumeration - 枚举
      Returns:
      Listinvalid input: '<'Collections3>
    • sortMapByKey

      public static <K, V> Map<K,V> sortMapByKey(Map<K,V> map, Comparator<K> comparator)
      根据key排序map
      Type Parameters:
      K - 泛型
      V - 泛型
      Parameters:
      map - map
      comparator - 比较器
      Returns:
      Mapinvalid input: '<'Collections3, Collections3>
    • sortMapByValue

      public static <K, V> Map<K,V> sortMapByValue(Map<K,V> map, Comparator<V> comparator)
      根据value排序map
      Type Parameters:
      K - 泛型
      V - 泛型
      Parameters:
      map - map
      comparator - 比较器
      Returns:
      Mapinvalid input: '<'Collections3, Collections3>
    • containsFieldValue

      public static boolean containsFieldValue(Collection<?> source, String fieldName, Object detectVal)
      是否存在集合中的字段值为 detectVal(只用于判断基本类型)
      Parameters:
      source - 源
      fieldName - 字段名
      detectVal - 检测值
      Returns:
      boolean
    • deWeight

      public static <T> List<T> deWeight(List<T> list, Function<T,?> function)
      根据某个字段去重
      Type Parameters:
      T - 泛型
      Parameters:
      list - 列表
      function - 函数
      Returns:
      Listinvalid input: '<'Collections3>
    • newHashMap

      public static <V> Map<String,V> newHashMap(Object... keyValue)
      新哈希map
      Type Parameters:
      V - 泛型
      Parameters:
      keyValue - 键价值
      Returns:
      Mapinvalid input: '<'String, Collections3>
    • getListFromIterator

      public static <T> List<T> getListFromIterator(Iterator<T> iterator)
      迭代器转换为List
      Type Parameters:
      T - 泛型
      Parameters:
      iterator - 迭代器
      Returns:
      Listinvalid input: '<'Collections3>