com.github.zhangxd1989.basetool.convert.impl.CharacterConverter Maven / Gradle / Ivy
package com.github.zhangxd1989.basetool.convert.impl;
import com.github.zhangxd1989.basetool.convert.AbstractConverter;
import com.github.zhangxd1989.basetool.util.BooleanUtil;
import com.github.zhangxd1989.basetool.util.StrUtil;
/**
* 字符转换器
*
* @author sheldon
*/
public class CharacterConverter extends AbstractConverter {
@Override
protected Character convertInternal(Object value) {
if (char.class == value.getClass()) {
return (Character) value;
} else if (value instanceof Boolean) {
return BooleanUtil.toCharacter((Boolean) value);
} else if (boolean.class == value.getClass()) {
return BooleanUtil.toCharacter((boolean) value);
} else {
final String valueStr = convertToStr(value);
if (StrUtil.isNotBlank(valueStr)) {
return valueStr.charAt(0);
}
}
return null;
}
}