Date与String类型转换 将Date格式化为String String format(Date d) 将String解析为Date Date parse(String s) SimpleDateFormatsdf=newSimpleDateFormat("yyyy-MM-ddHH:mm:ss"); try{...

Date与String类型转换

将Date格式化为String String format(Date d)
将String解析为Date Date parse(String s)
SimpleDateFormatsdf=newSimpleDateFormat("yyyy-MM-ddHH:mm:ss");
try{
//1、日期转字符串
Datedate=new Date();
StringdateStringParse=sdf.format(date);
//2、字符串转日期
StringdateString="2018-03-1214:44:08";
DatedateParse=sdf.parse(dateString);
}catch(ParseExceptione){
e.printStackTrace();
}
注意:创建 SimpleDateFormat 对象时指定转换格式
yyyy代表年,MM代表月,dd代表天(日),HH代表24进制的小时,hh 代表12进制的小时,mm代表分钟,ss代表秒

Object转String

方法1:采用 Object.toString()方法
Object object = getObject();
System.out.println(object.toString());
注意:必须保证object不是null值,否则将抛出NullPointerException异常。
判断一个字符串为空:s为一个字符串,判断它为空的方法:
if (null==s||"".equals(s)) {
}
方法2:采用类型转换(String)object方法
因null值可以强制转换为任何java类类型,(String)null也是合法的。
注意:使用这种方法时,需要注意的是类型必须能转成String类型。因此最好用instanceof做个类型检查,以判断是否可以转换。否则容易抛出CalssCastException异常。
方法3:采用String.valueOf(Object)
注意:当object为null时,String.valueOf(object)的值是字符串"null",而不是null!
List,Object>> list=super.getListOfMapBySql(querysql.toString()); map.get("FORMENDTIME") 取出来的数据 怎么转换成时间类型的
javaObject转换成指定的类型 /** *Object转成指定的类型 * @param obj * @param type * @param* @return */ public staticT convert(Object obj, Cla...
java Object转换成指定的类型
/** * Object转成指定的类型 *@param obj *@param type *@param*@return*/publicstaticT convert(Object obj, Classtype) {if (obj !=null && StringUtils.isNotBlank(obj.toString())) {if (type.equals(Integer.class)||type.equals(int.class)) {return (T)new Integer(obj.toString()); }elseif (type.equals(Long.class)||type.equals(long.class)) {return (T)new Long(obj.toString()); }elseif (type.equals(Boolean.class)||type.equals(boolean.class)) {return (T)new Boolean(obj.toString()); }elseif (type.equals(Short.class)||type.equals(short.class)) {return (T)new Short(obj.toString()); }elseif (type.equals(Float.class)||type.equals(float.class)) {return (T)new Float(obj.toString()); }elseif (type.equals(Double.class)||type.equals(double.class)) {return (T)new Double(obj.toString()); }elseif (type.equals(Byte.class)||type.equals(byte.class)) {return (T)new Byte(obj.toString()); }elseif (type.equals(Character.class)||type.equals(char.class)) {return (T)new Character(obj.toString().charAt(0)); }elseif (type.equals(String.class)) {return (T) obj; }elseif (type.equals(BigDecimal.class)) {return (T)new BigDecimal(obj.toString()); }elseif (type.equals(LocalDateTime.class)) {//DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");return (T) LocalDateTime.parse(obj.toString()); }elseif (type.equals(Date.class)) {try { SimpleDateFormat formatter=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss.SSS");return (T) formatter.parse(obj.toString()); }catch (ParseException e) {thrownew RuntimeException(e.getMessage()); } }else{returnnull; } }else {if (type.equals(int.class)) {return (T)new Integer(0); }elseif (type.equals(long.class)) {return (T)new Long(0L); }elseif (type.equals(boolean.class)) {return (T)new Boolean(false); }elseif (type.equals(short.class)) {return (T)new Short("0"); }elseif (type.equals(float.class)) {return (T)new Float(0.0); }elseif (type.equals(double.class)) {return (T)new Double(0.0); }elseif (type.equals(byte.class)) {return (T)new Byte("0"); }elseif (type.equals(char.class)) {return (T)new Character('\u0000'); }else {returnnull; } } }
转载于:https://www.cnblogs.com/puke/p/7228460.html
importjava.text.MessageFormat; importjava.text.ParsePosition; importjava.text....importjava.util.Date; /** * * @author 课时二 :类型转换 * */ public class TypeConvert {	public sta...
import java.text.MessageFormat; import java.text.ParsePosition; import java.text.SimpleDateFormat; import java.util.Date; /** * * @author 课时二 :类型转换 * */ public class TypeConvert {	public static void main(String[] args) {	/**	* 1. 隐式转换:小类型转大类型自动转换 2.强制转换:大类型转小类型强制转换	*/	Byte bt = 1;	int num = 100;	// 隐式转换	short stNumBt = bt;	// int to short强制转换	short stNum = (short) num;	// String转换成Object	StringToObject();	System.out.println();	System.out.println("********************************************************分界线******************************************************************");	System.out.println();	//Object转换成String	ObjectToString();	}	/**	* String转换成Object	*/	public static void StringToObject() {	String intStr = "10000";	String boolStr = "true";	String doubleStr = "20.88";	String dateStr = "2019-1-1 10:10:10";	// String to int 方法一	int IntNum = Integer.parseInt(intStr);	System.out.printf("String to int:%d", IntNum);	System.out.println();	// String to int 方法二	int IntNum2 = Integer.valueOf(intStr);	System.out.printf("String to int: %d ", IntNum2);	System.out.println();	// String to boolean 方法一	boolean bl = Boolean.parseBoolean(boolStr);	System.out.printf("String to boolean: %b ", bl);	System.out.println();	// String to boolean 方法二	boolean bl2 = Boolean.valueOf(boolStr);	System.out.printf("String to boolean: %b ", bl2);	System.out.println();	// String to Date	SimpleDateFormat simpleDate = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");	Date dt = simpleDate.parse(dateStr, new ParsePosition(0));	System.out.printf("String to Date: %tF %tT", dt, dt);	System.out.println();	System.out.println(dt);	// String to double	double db = Double.valueOf(doubleStr);	System.out.printf(" String to double: %.2f", db);	System.out.println();	}	/**	* Object转换成String	*/	public static void ObjectToString() {	int num = 1;	boolean isExists = true;	double db = 20.88;	Date dt = new Date();	// Int to String方法一	String numString = Integer.toString(num);	System.out.printf("Int to String:%s", numString);	System.out.println();	// Int to String方法二	String numString2 = String.valueOf(num);	System.out.printf("Int to String2:%s", numString2);	System.out.println();	// boolean to String方法一	String boolString = Boolean.toString(isExists);	System.out.printf("boolean to String:%s", boolString);	System.out.println();	// boolean to String方法二	String boolString2 = String.valueOf(isExists);	System.out.printf("boolean to String2:%s", boolString2);	System.out.println();	// double to String方法一	String doubleString =Double.toString(db);	System.out.printf("double to String:%s", doubleString);	System.out.println();	// double to String方法二	String doubleString2 = String.valueOf(db);	System.out.printf("double to String2:%s", doubleString2);	System.out.println();	// Date to String 方法一	String dtString = String.valueOf(dt);	System.out.printf("Date to String:%s", dtString);	System.out.println();	SimpleDateFormat sdDateFormat=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");	String dtString2=sdDateFormat.format(dt);	System.out.printf(MessageFormat.format("Date to String:{0}", dtString2));	System.out.println();	} }
总结:
String 转换 Object : 使用类似Obj.parseObj(String) , Obj.valueOf(String)
Object转换 String: 使用类似 Obj.toString(Obj), String.valueOf(Obj)
Date类型的转换使用SimpleDateFormat
如果是 JDK8 的应用,可以使用 Instant 代替 Date,LocalDateTime 代替 Calendar, DateTimeFormatter 代替 SimpleDateFormat,
执行效果:
我们来看下java.sql.Date的源码 packagejava.sql; importjava.time.Instant; importjava.time.LocalDate; public classDate extendsjava.util.Date {} 从以上源码可以看出,sql.Date是util.Date...

1、util.Date和sql.Date之间的关系

我们来看下java.sql.Date的源码
package java.sql; import java.time.Instant; import java.time.LocalDate; public class Date extends java.util.Date {}
从以上源码可以看出,sql.Date是util.Date的子类

2、util.Date的构造方法

以下是java.util.Date的方法部分方法图示:
可以看到,主要有两个构造方法推荐使用,添加了
标记的表示这些方法已经被废弃,不推荐使用。
所以对于,java.util.Date 常用的构造方法有:
Date()
Date(long) 方法参数为一个长整型的毫秒值
其中,java.util.Date中还有一个重要的方法:就是获取当前时间的毫秒值
public class Date implements java.io.Serializable, Cloneable, Comparable{ /** * Returns the number of milliseconds since January 1, 1970, 00:00:00 GMT * represented by thisDateobject. * * @return the number of milliseconds since January 1, 1970, 00:00:00 GMT * represented by this date. */ public long getTime() { return getTimeImpl(); } }
从以上源码可以看到,该方法是public的,所以,它的子类sql.Date也是可以继承该方法的。

3、sql.Date的构造方法

以下是java.sql.Date的方法部分方法图示:
可以看到,sql.Date主要有一个构造方法:Date(long)

4、util.Date和sql.Date之间的转换

// 1) 创建java.util.Date的对象 java.util.Date utilDate= new java.util.Date(); // 2)将java.util.Date转成java.sql.Date long datems = utilDate.getTime(); java.sql.Date sqlDate = new java.sql.Date(datems); // 3)将java.sql.Date 转成 java.util.Date long datems2 = sqlDate.getTime(); java.util.Date utilDate = new java.util.Date(datems2);
此文希望可以帮助到大家。如有错误,请指教。
如果大家还有其他的情况或者好的解决方法,也望指教,感谢阅读。
一、判断Object的类型 下面是截取的一个判断Objec的类型,然后给Excel的单元格设置类型和添加值的操作: obj instanceof 类型Object obj = entityMap.get(j); if (obj instanceof Integer) { cell....
Object 类位于java.lang 包中,是所有Java 类的祖先,Java 中的每个类都由它扩展而来。定义Java类时如果没有显示的指明父类,那么就默认继承了Object 类。例如: 1.publicclassDemo{ 2.// ... 3.} ...
Map转换Object、Object转换Map、List