ConverterRegistry
类型转换登记中心。将各种类型Convert对象放入登记中心,通过convert
方法查找目标类型对应的转换器,将被转换对象转换之。在此类中,存放着默认转换器和自定义转换器,默认转换器是Hutool中预定义的一些转换器,自定义转换器存放用户自定的转换器。
使用方式如下:
inta=1; ConverterRegistryconverterRegistry=ConverterRegistry.getInstance(); Stringresult=converterRegistry.convert(String.class, a); Assert.assertEquals("1", result);
自定义转换
Hutool的默认转换有时候并不能满足我们自定义对象的一些需求,这时我们可以使用ConverterRegistry.getInstance().putCustom()
方法自定义类型转换。
- 自定义转换器
publicstaticclassAConverterimplementsConverter<String>{ publicStringconvert(Objectvalue, StringdefaultValue) throwsIllegalArgumentException { returnvalue.toString(); } }
- 注册转换器
ConverterRegistryconverterRegistry=ConverterRegistry.getInstance(); converterRegistry.putCustom(String.class, CustomConverter.class);
- 执行转换
inta=1; Stringresult=converterRegistry.convert(String.class, a); Assert.assertEquals("1", result);