引言
在使用集合的过程中,集合里面不一定是放一种类型的数据,有时候会放多种,为了方便在创建集合的时候使用object统一处理(Map<String, Object>),等取出来的时候再进行转换。
转换可以强制转换,如:`int i=1; object o=i; int in=(Integer) o;`。
在java api中object有个方法,tostring()可以把object转成String类型的数据,String又可以转其他类型数据,有时候强转没有用可以试下这个方法。
String转其他类型数据
String转double 、int、float、long……
String转数字类型(double 、int、float、long)的数据通用方法:都是通过本类型自带的parse方法解析出来的。如int i=Integer.parseInt(c);
注意String中只包含数字,包含其他会报错。
String转char
全部转:toCharArray()
特定转:charAt(int index)
String转boolean
String c = "true";
// 当String类型数据值为true/false时,直接输出true/false
boolean N = Boolean.parseBoolean(c);
System.out.println("String类型转换成boolean类型:" + N);
// 当String类型数据值为数字、字符、汉字或混合构成,则输出false
String s = "123c";
boolean o = Boolean.parseBoolean(s);
System.out.println("String类型转换成boolean类型:" + o);
String转Date类型
下面要用到java的一个工具类:SimpleDateFormat
简单介绍
SimpleDateFormat 是一个以与语言环境有关的方式来格式化和解析日期的具体类。它允许进行格式化(日期 -> 文本)、解析(文本 -> 日期)和规范化。
SimpleDateFormat 使得可以选择任何用户定义的日期-时间格式的模式。但是,仍然建议通过 DateFormat 中的 getTimeInstance、getDateInstance 或 getDateTimeInstance 来创建日期-时间格式器。每一个这样的类方法都能够返回一个以默认格式模式初始化的日期/时间格式器。可以根据需要使用 applyPattern 方法来修改格式模式。
具体转换
方法一:
Date date = null;
SimpleDateFormat formater = new SimpleDateFormat();
formater.applyPattern("yyyy-MM-dd");
try {
date = formater.parse(dateStr);
} catch (ParseException e) {
e.printStackTrace();
}
方法二:
java.util.Date dt=null;
DateFormat df=DateFormat.getDateInstance();
dt=df.parse("2005-12-19");
System.out.println(dt); //输出结果为:Mon Dec 19 00:00:00 CST 2005
System.out.println(df.format(dt)); //输出结果为:2005-2-19
其他类型转换为String
double 、int、float、long……转String
使用valueof方法
Date转String
public static String toString(Date date, String formaterString) {
String time;
SimpleDateFormat formater = new SimpleDateFormat();
formater.applyPattern(formaterString);
time = formater.format(date);
return time;
}