Добавил возможность создавать enum
This commit is contained in:
parent
493dfb3627
commit
e4a54fda20
@ -7,7 +7,9 @@ import java.lang.reflect.Method;
|
|||||||
import java.math.BigDecimal;
|
import java.math.BigDecimal;
|
||||||
import java.math.BigInteger;
|
import java.math.BigInteger;
|
||||||
import java.util.Arrays;
|
import java.util.Arrays;
|
||||||
|
import java.util.Optional;
|
||||||
|
|
||||||
|
import static dev.struchkov.haiti.utils.Checker.checkNotNull;
|
||||||
import static dev.struchkov.haiti.utils.Exceptions.utilityClass;
|
import static dev.struchkov.haiti.utils.Exceptions.utilityClass;
|
||||||
import static dev.struchkov.haiti.utils.Inspector.isNotNull;
|
import static dev.struchkov.haiti.utils.Inspector.isNotNull;
|
||||||
|
|
||||||
@ -141,4 +143,19 @@ public class ObjectUtils {
|
|||||||
&& method.getName().toLowerCase().endsWith(fieldName.toLowerCase());
|
&& method.getName().toLowerCase().endsWith(fieldName.toLowerCase());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Позволяет создать произвольный enum из его значения.
|
||||||
|
*
|
||||||
|
* @param name значение из enum
|
||||||
|
* @param enumClass класс enum
|
||||||
|
* @param <T> возвращаемый тип енума
|
||||||
|
* @return преобразованный енум или пустой Optional
|
||||||
|
*/
|
||||||
|
public static <T extends Enum<T>> Optional<T> createEnum(String name, Class<T> enumClass) {
|
||||||
|
if (checkNotNull(name)) {
|
||||||
|
return Optional.of(Enum.valueOf(enumClass, name));
|
||||||
|
}
|
||||||
|
return Optional.empty();
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user