类 CollectionComparator<K,T>

java.lang.Object
com.flyfish.oauth.common.sync.support.CollectionComparator<K,T>

public class CollectionComparator<K,T> extends Object

CollectionComparator

对象比较实用工具类 用途: 1.用来根据指定字段求出对象集合的差并补集 2.用于比较对象列表,并定义比较器逐级比较 3.提供各种集合封装,便于取出想要的结果集 特性: 1.命名空间保护,不可手动初始化 2.懒加载机制,按需分配资源 3.提供对象复用方法changeTarget 4.提供回调机制,传入比较器求出不同集(高效率) 用法: 1.不带比较器的初始化工厂
CollectionComparator无效输入:'<'String, Project> util = CollectionComparator.newInstance(
originList,newList, ReflectDataUtil.getMethod(Project.class)
);
2.带比较器的初始化工厂
CollectionComparator无效输入:'<'String, Project> util = CollectionComparator.newInstanceWithComparator(
originList,newList, ReflectDataUtil.getMethod(Project.class),
new Comparator() { ${compare}}
);
取出变更的内容
util.changedKeys();
作者:
wangyu
  • 方法详细资料

    • newInstance

      public static <E,V> CollectionComparator<E,V> newInstance(List<V> origin, List<V> copy, Function<V,E> keyMethod)
    • newInstance

      public static <E,V> CollectionComparator<E,V> newInstance(List<V> origin, List<V> copy, List<Function<V,E>> keyMethods)
    • newInstanceWithComparator

      public static <E,V> CollectionComparator<E,V> newInstanceWithComparator(List<V> origin, List<V> copy, Function<V,E> keyMethod, Comparator<V> comparator)
    • newInstanceWithComparator

      public static <E,V> CollectionComparator<E,V> newInstanceWithComparator(List<V> origin, List<V> copy, List<Function<V,E>> keyMethods, Comparator<V> comparator)
    • changeTarget

      public CollectionComparator<K,T> changeTarget(List<T> origin, List<T> copy)
    • added

      public List<T> added()
      前者变为后者增加的集合
      返回:
      结果集
    • deleted

      public List<T> deleted()
      前者变为后者删除的集合
      返回:
      结果集
    • addedKeys

      public Set<K> addedKeys()
      前者变为后者增加的Code集合
      返回:
      key的集合
    • deletedKeys

      public Set<K> deletedKeys()
      前者变为后者删除的Code集合
      返回:
      key的集合
    • remainedOriginList

      public List<T> remainedOriginList()
    • remainedNewList

      public List<T> remainedNewList()
    • changedOriginList

      public List<T> changedOriginList()
    • changedNewList

      public List<T> changedNewList()
    • remainedKeys

      public Set<K> remainedKeys()
      前者转变为后者不变的集合
      返回:
      key的集合
    • changedKeys

      public Set<K> changedKeys()
    • originMap

      public Map<K,T> originMap()
      前者转变为后者不变的集合
      返回:
      key的集合
    • newMap

      public Map<K,T> newMap()
      前者转变为后者不变的集合
      返回:
      key的集合
    • remainedOriginMap

      public Map<K,T> remainedOriginMap()
      前者转变为后者不变的Map(正本)
      返回:
      map
    • remainedNewMap

      public Map<K,T> remainedNewMap()
      前者转变为后者不变的Map(副本)
      返回:
      map
    • changedOriginMap

      public Map<K,T> changedOriginMap()
      前者转变为后者改变的Map(正本)
      返回:
      map
    • changedNewMap

      public Map<K,T> changedNewMap()
      前者转变为后者改变的Map(副本)
      返回:
      map
    • getBind

      public Object getBind()
    • bind

      public void bind(Object bind)
    • isEqual

      public boolean isEqual()
      两个集合内容是否相等(针对数据)
      返回:
      布尔