Class ObjectUtils

java.lang.Object
icu.easyj.core.util.ObjectUtils

public abstract class ObjectUtils extends Object
对象工具类
Author:
wangliang181230
  • Nested Class Summary

    Nested Classes
    Modifier and Type
    Class
    Description
    static enum 
    克隆模式 只有不克隆时,目标对象才不需要继承 CloneSupport
  • Constructor Summary

    Constructors
    Constructor
    Description
     
  • Method Summary

    Modifier and Type
    Method
    Description
    static <T> T
    defaultIfEmpty(T obj, Supplier<T> defaultValueSupplier)
    如果为空,则执行supplier生成新的值
    static <T> T
    defaultIfEmpty(T obj, T defaultValue)
    如果为空,则返回默认值
    static <T> T
    defaultIfNull(T obj, Supplier<T> defaultValueSupplier)
    如果为null,则执行supplier生成新的值
    static <T> T
    defaultIfNull(T obj, T defaultValue)
    如果为null,则返回默认值
    static <T> T
    find(T[] objArr, Predicate<T> objMatcher)
    根据匹配函数,查找数据
    static <T> boolean
    in(T obj, T... array)
    判断对象是否存在于数组中
    static <T> T
    mergeData(T target, Map<String,Object> data)
    合并数据到目标对象中
    static <T> T
    mergeData(T target, Map<String,Object> data, ObjectUtils.CloneMode cloneMode)
    合并数据到目标对象中
    static <T> boolean
    notIn(T obj, T... array)
    判断对象是否不存在于数组中

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Constructor Details

    • ObjectUtils

      public ObjectUtils()
  • Method Details

    • mergeData

      public static <T> T mergeData(@NonNull T target, @Nullable Map<String,Object> data, ObjectUtils.CloneMode cloneMode)
      合并数据到目标对象中
      Type Parameters:
      T - 目标对象类
      Parameters:
      target - 目标对象
      data - 数据
      cloneMode - 克隆模式
      Returns:
      返回目标对象或克隆对象
      Throws:
      cn.hutool.core.clone.CloneRuntimeException - 目标对象不支持克隆时,将抛出该异常
    • mergeData

      public static <T> T mergeData(@NonNull T target, @Nullable Map<String,Object> data)
      合并数据到目标对象中
      Type Parameters:
      T - 目标对象类
      Parameters:
      target - 目标对象
      data - 数据
      Returns:
      返回目标对象或克隆对象(当数据不为空时,才会克隆一份对象)
      Throws:
      cn.hutool.core.clone.CloneRuntimeException - 目标对象不支持克隆时,将抛出该异常
    • in

      @SafeVarargs public static <T> boolean in(T obj, T... array)
      判断对象是否存在于数组中
      Type Parameters:
      T - 对象类型
      Parameters:
      obj - 对象
      array - 对象数组
      Returns:
      是否存在于数组中
    • notIn

      @SafeVarargs public static <T> boolean notIn(T obj, T... array)
      判断对象是否不存在于数组中
      Type Parameters:
      T - 对象类型
      Parameters:
      obj - 对象
      array - 对象数组
      Returns:
      是否不存在于数组中
    • find

      @Nullable public static <T> T find(T[] objArr, Predicate<T> objMatcher)
      根据匹配函数,查找数据
      Type Parameters:
      T - 对象类型
      Parameters:
      objArr - 对象数组
      objMatcher - 对象匹配函数
      Returns:
      返回找到的字符串 或 null
    • defaultIfNull

      public static <T> T defaultIfNull(T obj, T defaultValue)
      如果为null,则返回默认值
      Type Parameters:
      T - 对象类型
      Parameters:
      obj - 对象
      defaultValue - 默认值
      Returns:
      入参对象或默认值
    • defaultIfNull

      public static <T> T defaultIfNull(T obj, Supplier<T> defaultValueSupplier)
      如果为null,则执行supplier生成新的值
      Type Parameters:
      T - 对象类型
      Parameters:
      obj - 对象
      defaultValueSupplier - 默认值提供者
      Returns:
      入参对象或生成的默认值
    • defaultIfEmpty

      public static <T> T defaultIfEmpty(T obj, T defaultValue)
      如果为空,则返回默认值
      Type Parameters:
      T - 对象类型
      Parameters:
      obj - 对象
      defaultValue - 默认值
      Returns:
      入参对象或默认值
    • defaultIfEmpty

      public static <T> T defaultIfEmpty(T obj, Supplier<T> defaultValueSupplier)
      如果为空,则执行supplier生成新的值
      Type Parameters:
      T - 对象类型
      Parameters:
      obj - 对象
      defaultValueSupplier - 默认值提供者
      Returns:
      入参对象或生成的默认值