add method

This commit is contained in:
Looly 2022-09-20 18:58:30 +08:00
parent 11f52ffc4f
commit 1d3cf0d1a7
2 changed files with 14 additions and 0 deletions

View File

@ -8,6 +8,7 @@
### 🐣新特性
* 【core 】 StreamUtil.of方法新增对 Iterator 支持StreamUtil.of(Iterable) 方法优化pr#807@Gitee
* 【core 】 增加.wgt格式的MimeTypepr#2617@Github
* 【core 】 EnumUtil.getBy增加带默认值重载issue#I5RZU6@Gitee
### 🐞Bug修复
* 【core 】 修复FileNameUtil.cleanInvalid无法去除换行符问题issue#I5RMZV@Gitee

View File

@ -246,6 +246,19 @@ public class EnumUtil {
return Arrays.stream(implClass.getEnumConstants()).filter(e -> condition.callWithRuntimeException(e).equals(value)).findAny().orElse(null);
}
/**
* 通过 某字段对应值 获取 枚举获取不到时为 {@code defaultEnum}
*
* @param condition 条件字段
* @param value 条件字段值
* @param defaultEnum 条件找不到则返回结果使用这个
* @return 对应枚举 获取不到时为 {@code null}
* @since 5.8.8
*/
public static <E extends Enum<E>, C> E getBy(Func1<E, C> condition, C value, E defaultEnum) {
return ObjectUtil.defaultIfNull(getBy(condition, value), defaultEnum);
}
/**
* 通过 某字段对应值 获取 枚举中另一字段值获取不到时为 {@code null}
*