mirror of
https://gitee.com/chinabugotech/hutool.git
synced 2025-08-18 20:38:02 +08:00
修改Func1参数的方法为LambdaUtil#getInstantiatedClass
提供EnumUtil中对lambda进行映射处理
This commit is contained in:
@@ -21,9 +21,11 @@ public class LambdaUtilTest {
|
||||
|
||||
@Test
|
||||
public void getImplClassTest() {
|
||||
Class<MyTeacher> aClass = LambdaUtil.getImplClass(MyTeacher::getAge);
|
||||
// 一般用于封装工具类时减少参数使用
|
||||
Class<MyTeacher> aClass = LambdaUtil.getInstantiatedClass(MyTeacher::getAge);
|
||||
Assert.assertEquals(MyTeacher.class, aClass);
|
||||
|
||||
// 一般用于封装工具类时减少参数使用
|
||||
MyTeacher myTeacher = new MyTeacher();
|
||||
Class<MyTeacher> bClass = LambdaUtil.getImplClass(myTeacher::getAge);
|
||||
Assert.assertEquals(MyTeacher.class, bClass);
|
||||
|
@@ -9,7 +9,7 @@ import java.util.Map;
|
||||
|
||||
/**
|
||||
* EnumUtil单元测试
|
||||
*
|
||||
*
|
||||
* @author looly
|
||||
*
|
||||
*/
|
||||
@@ -20,39 +20,53 @@ public class EnumUtilTest {
|
||||
List<String> names = EnumUtil.getNames(TestEnum.class);
|
||||
Assert.assertEquals(CollUtil.newArrayList("TEST1", "TEST2", "TEST3"), names);
|
||||
}
|
||||
|
||||
|
||||
@Test
|
||||
public void getFieldValuesTest() {
|
||||
List<Object> types = EnumUtil.getFieldValues(TestEnum.class, "type");
|
||||
Assert.assertEquals(CollUtil.newArrayList("type1", "type2", "type3"), types);
|
||||
}
|
||||
|
||||
|
||||
@Test
|
||||
public void getFieldNamesTest() {
|
||||
List<String> names = EnumUtil.getFieldNames(TestEnum.class);
|
||||
Assert.assertTrue(names.contains("type"));
|
||||
Assert.assertTrue(names.contains("name"));
|
||||
}
|
||||
|
||||
|
||||
@Test
|
||||
public void getByTest() {
|
||||
// 枚举中字段互相映射使用
|
||||
TestEnum testEnum = EnumUtil.getBy(TestEnum::getType, "type2");
|
||||
Assert.assertEquals("TEST2", testEnum.name());
|
||||
}
|
||||
|
||||
@Test
|
||||
public void getFieldByTest() {
|
||||
// 枚举中字段互相映射使用
|
||||
String type = EnumUtil.getFieldBy(TestEnum::getType, TestEnum::ordinal, 1);
|
||||
Assert.assertEquals("type2", type);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void likeValueOfTest() {
|
||||
TestEnum value = EnumUtil.likeValueOf(TestEnum.class, "type2");
|
||||
Assert.assertEquals(TestEnum.TEST2, value);
|
||||
}
|
||||
|
||||
|
||||
@Test
|
||||
public void getEnumMapTest() {
|
||||
Map<String,TestEnum> enumMap = EnumUtil.getEnumMap(TestEnum.class);
|
||||
Assert.assertEquals(TestEnum.TEST1, enumMap.get("TEST1"));
|
||||
}
|
||||
|
||||
|
||||
@Test
|
||||
public void getNameFieldMapTest() {
|
||||
Map<String, Object> enumMap = EnumUtil.getNameFieldMap(TestEnum.class, "type");
|
||||
assert enumMap != null;
|
||||
Assert.assertEquals("type1", enumMap.get("TEST1"));
|
||||
}
|
||||
|
||||
|
||||
public enum TestEnum{
|
||||
TEST1("type1"), TEST2("type2"), TEST3("type3");
|
||||
|
||||
@@ -62,11 +76,11 @@ public class EnumUtilTest {
|
||||
|
||||
private final String type;
|
||||
private String name;
|
||||
|
||||
|
||||
public String getType() {
|
||||
return this.type;
|
||||
}
|
||||
|
||||
|
||||
public String getName() {
|
||||
return this.name;
|
||||
}
|
||||
|
Reference in New Issue
Block a user