java基础数据类型:
java数据类型转换主要分为三类:
1、简单数据类型之间的转换
简单数据类型之间的转换又分为自动类型转换(低级到高级)、强制类型转换(高级到低级以及同级之间)、包装类过度类型转换;
注意事项:
boolean类型不能转换成其它数据类型;
低级别自动转换为高级别 :byte,short,char->int->long->float->double;
同级之间不会自动转换,可以强制类型转换;
强制类型转换室友高级别像低级别之间转化,会降低经度准确信;
包装类:Boolean、Character、Byte、Short、Integer、Long、Float、Double;
低级别自动转换为高级别 :byte,short,char->int->long->float->double;
同级之间不会自动转换,可以强制类型转换;
强制类型转换室友高级别像低级别之间转化,会降低经度准确信;
包装类:Boolean、Character、Byte、Short、Integer、Long、Float、Double;
2、字符串与其它数据类型的转换
3、其它字符串与Date之间转换
package com.myuiapp.utils; import android.text.TextUtils; import java.text.DateFormat; import java.text.ParseException; import java.text.SimpleDateFormat; import java.util.Date; import java.util.List; /** * TODO 基础类型转换类 * * @author cb2016 * @version V 1.0 * @date 2016/10/25 16:19. */ public class TypeConvert { /** * yyyy-MM-dd HH:mm:ss 格式 */ public static final String DEFAULT_DATE_TIME_FORMAT_PATTERN = "yyyy-MM-dd HH:mm:ss"; /** * yyyy-MM-dd HH:mm 格式 */ public static final String DEFAULT_DATE_TIME_HHmm_FORMAT_PATTERN = "yyyy-MM-dd HH:mm"; /** * yyyy-MM-dd HH 格式 */ public static final String DEFAULT_DATE_TIME_HH_FORMAT_PATTERN = "yyyy-MM-dd HH"; /** * yyyy-MM-dd 格式 */ public static final String DEFAULT_DATE_FORMAT_PATTERN = "yyyy-MM-dd"; /** * HH:mm:ss 格式 */ public static final String DEFAULT_TIME_FORMAT_PATTERN = "HH:mm:ss"; /** * HH:mm 格式 */ public static final String DEFAULT_TIME_HHmm_FORMAT_PATTERN = "HH:mm"; private java.util.Calendar c; //日历类 /** * string to boolean * * @return */ public static boolean stingToBoolean(String value, boolean defaultValue) { return TextUtils.isEmpty(value) ? defaultValue : Boolean.valueOf(value); } /** * string to int */ public static int stringToInt(String value, int defaultValue) { return TextUtils.isEmpty(value) ? defaultValue : Integer.parseInt(value); } /** * string to string */ public static String getString(String value, String defaultValue) { return TextUtils.isEmpty(value) ? defaultValue : value; } /** * string to Ingeger */ public static Integer stringToInteger(String value, Integer defaultValue) { return TextUtils.isEmpty(value) ? defaultValue : Integer.valueOf(value); } /** * string to long */ public static long stringToLong(String value, long defaultValue) { return TextUtils.isEmpty(value) ? defaultValue : Long.parseLong(value); } /** * string to double */ public static double stringToDouble(String value, double defaultValue) { return TextUtils.isEmpty(value) ? defaultValue : Double.parseDouble(value); } /** * string to float */ public static float stringToFloat(String value, float defaultValue) { return TextUtils.isEmpty(value) ? defaultValue : Float.parseFloat(value); } /** * 使用日期转换pattern <p>pattern的用法参见java.text.SimpleDateFormat</p> * * @param pattern 日期解析规则 * @return 按规则转换后的日期时间字符串 */ public String toDateTimeString(String pattern) { SimpleDateFormat fmt = (SimpleDateFormat) DateFormat.getDateInstance(); fmt.applyPattern(pattern); return fmt.format(c.getTime()); } // formatType格式为yyyy-MM-dd HH:mm:ss//yyyy年MM月dd日 HH时mm分ss秒 // data Date类型的时间 public static String dateToString(Date data, String formatType) { return new SimpleDateFormat(formatType).format(data); } // strTime要转换的string类型的时间,formatType要转换的格式yyyy-MM-dd HH:mm:ss//yyyy年MM月dd日 // HH时mm分ss秒, // strTime的时间格式必须要与formatType的时间格式相同 public static Date stringToDate(String strTime, String formatType) throws ParseException { SimpleDateFormat formatter = new SimpleDateFormat(formatType); Date date = null; date = formatter.parse(strTime); return date; } /** * 转换为 DEFAULT_DATE_FORMAT_PATTERN (yyyy-MM-dd) 格式字符串 * * @return yyyy-MM-dd格式字符串 */ public String toDateString() { return toDateTimeString(TypeConvert.DEFAULT_DATE_FORMAT_PATTERN); } /** * 转换为 DEFAULT_TIME_FORMAT_PATTERN (HH:mm:ss) 格式字符串 * * @return HH:mm:ss 格式字符串 */ public String toTimeString() { return toDateTimeString(TypeConvert.DEFAULT_TIME_FORMAT_PATTERN); } /** * 转换为 DEFAULT_DATE_TIME_FORMAT_PATTERN (yyyy-MM-dd HH:mm:ss) 格式字符串 * * @return yyyy-MM-dd HH:mm:ss 格式字符串 */ public String toDateTimeString() { return toDateTimeString(TypeConvert.DEFAULT_DATE_TIME_FORMAT_PATTERN); } /** * 将字符按照指定分隔符生成字符数组 * * @param propValue * @param delim * @return */ public static String[] toStringArray(String propValue, String delim) { if (propValue != null) { return propValue.split(delim); } else { return null; } } /** * 将list转化为数组 * * @param list * @return */ public static String[] toArray(List<String> list) { if (list == null) return null; String[] result = new String[list.size()]; for (int i = 0; i < list.size(); i++) { result[i] = list.get(i); } return result; } }