org.apache.commons.beanutils.ConvertUtils这个类的使用介绍,这个工具类的职能是在字符串和指定类型的实例之间进行转换。
目前支持的类型有:
java.lang.BigDecimal
java.lang.BigInteger
boolean and java.lang.Boolean
byte and java.lang.Byte
char and java.lang.Character
java.lang.Class
double and java.lang.Double
float and java.lang.Float
int and java.lang.Integer
long and java.lang.Long
short and java.lang.Short
java.lang.String
java.io.File
java.net.URL
java.sql.Date
java.sql.Time
java.sql.Timestamp
这个类提供了两个功能:
1.将字符串转换为指定类型;
convert(java.lang.Object object)
有点像toString()方法相似。
convert(java.lang.String str, java.lang.Class clazz)
将字符串str转换为clazz的一个实例;如果失败的话,就以String的形式返回value。
convert(java.lang.String[] strs, java.lang.Class clazz)
这个方法是对前一方法的加强版,将数组中的每个strs都进行转换,最后以Object返回。(数组也是Object啊)
对他进行扩展后 可以在object和其他类型之间的转换,示例如下:
public class TestConvertUtil extends org.apache.commons.beanutils.ConvertUtils {
//将object转化成int型
public static int intConvert(Object object){
String str = object==null?null:object.toString();
Object obj = org.apache.commons.beanutils.ConvertUtils.convert(str, Integer.class);
Integer i= (Integer)obj;
return i;
}
//将任意的Object转换成string
public static String stringConvert(Object object){
Object obj = org.apache.commons.beanutils.ConvertUtils.convert(object);
String string = (String) obj;
return string;
}
public static boolean booleanConvert(Object object){
String str = object == null?null:object.toString();
Object obj = org.apache.commons.beanutils.ConvertUtils.convert(str, Boolean.class);
boolean b =(Boolean)obj;
return b;
}
public static void main(String[] arg) {
System.out.println(intConvert("123"));
System.out.println(stringConvert(456.2));
System.out.println(booleanConvert("true"));
}
}
其他类型也是类似的。