java.lang.Object
org.miaixz.bus.core.convert.AbstractConverter
org.miaixz.bus.core.convert.NumberConverter
- All Implemented Interfaces:
Serializable,Converter,MatcherConverter
数字转换器 支持类型为:
java.lang.Bytejava.lang.Shortjava.lang.Integerjava.util.concurrent.atomic.AtomicIntegerjava.lang.Longjava.util.concurrent.atomic.AtomicLongjava.lang.Floatjava.lang.Doublejava.math.BigDecimaljava.math.BigInteger
- Since:
- Java 17+
- Author:
- Kimi Liu
- See Also:
-
Field Summary
Fields -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected static Number转换对象为数字,支持的对象包括: Number对象 Boolean byte[] Stringprotected NumberconvertInternal(Class<?> targetClass, Object value) 内部转换器,被AbstractConverter.convert(Type, Object)调用,实现基本转换逻辑 内部转换器转换后如果转换失败可以做如下操作,处理结果都为返回默认值:protected StringconvertToString(Object value) 值转为String,用于内部转换中需要使用String中转的情况 转换规则为:boolean判断需要转换的对象是否匹配当前转换器,满足则转换,否则跳过Methods inherited from class org.miaixz.bus.core.convert.AbstractConverter
convertMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface org.miaixz.bus.core.convert.MatcherConverter
match
-
Field Details
-
INSTANCE
单例
-
-
Constructor Details
-
NumberConverter
public NumberConverter()
-
-
Method Details
-
convert
protected static Number convert(Object value, Class<? extends Number> targetType, Function<Object, String> toStrFunc) 转换对象为数字,支持的对象包括:- Number对象
- Boolean
- byte[]
- String
- Parameters:
value- 对象值targetType- 目标的数字类型toStrFunc- 转换为字符串的函数- Returns:
- 转换后的数字
-
match
Description copied from interface:MatcherConverter判断需要转换的对象是否匹配当前转换器,满足则转换,否则跳过- Specified by:
matchin interfaceMatcherConverter- Parameters:
targetType- 转换的目标类型,不能为nullrawType- 目标原始类型,当targetType为Class时,和此参数一致,不能为nullvalue- 需要转换的值- Returns:
- 是否匹配
-
convertInternal
Description copied from class:AbstractConverter内部转换器,被AbstractConverter.convert(Type, Object)调用,实现基本转换逻辑 内部转换器转换后如果转换失败可以做如下操作,处理结果都为返回默认值:1、返回
null2、抛出一个RuntimeException异常- Specified by:
convertInternalin classAbstractConverter- Parameters:
targetClass- 目标类型value- 值- Returns:
- 转换后的类型
-
convertToString
Description copied from class:AbstractConverter值转为String,用于内部转换中需要使用String中转的情况 转换规则为:1、字符串类型将被强转 2、数组将被转换为逗号分隔的字符串 3、其它类型将调用默认的toString()方法
- Overrides:
convertToStringin classAbstractConverter- Parameters:
value- 值- Returns:
- String
-