java1234开源博客系统
博客信息

java常用类-java日期处理类

发布时间:『 2016-11-02 18:08』  博客类别:Java核心基础  阅读(6877) 评论(0)

java常用类-java日期处理类


Date类

Date类是jdk给我们提高的标准日期类,在java.util包下;

给下示例代码:

package com.java1234.chap05.sec01;

import java.util.Date;

public class TestDate {

	public static void main(String[] args) {
		Date date=new Date();
		System.out.println("当前日期:"+date);
	}
}

运行输出:

当前日期:Wed Nov 02 16:54:01 CST 2016


输出了当前日期和时间 但是我们发现 格式不怎么好。


Calendar类

Calendar是日历类,也是java.util包下的,功能比较强大,能获取到年月日时分秒的具体值;

我们给下示例:打印当前日期时间 年月日时分秒:

package com.java1234.chap05.sec01;

import java.util.Calendar;

public class TestCalendar {

	public static void main(String[] args) {
		Calendar calendar=Calendar.getInstance();
		System.out.println(calendar.get(Calendar.YEAR));
		System.out.println(calendar.get(Calendar.MONTH)+1); // 月份从0开始 要+1
		
		System.out.println("现在是:"+calendar.get(Calendar.YEAR)+"年"
				+(calendar.get(Calendar.MONTH)+1)+"月"
				+calendar.get(Calendar.DAY_OF_MONTH)+"日"
				+calendar.get(Calendar.HOUR_OF_DAY)+"时"
				+calendar.get(Calendar.MINUTE)+"分"
				+calendar.get(Calendar.SECOND)+"秒");
	}
}

运行输出:

2016

11

现在是:2016年11月2日17时15分17秒


SimpleDateFormat类

SimpleDateFormat类主要是用作日期类型转换用的,在java.text包下:

我们写个示例,把日期对象和日期字符串相互转换:

package com.java1234.chap05.sec01;

import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;

public class TestSimpleDateFormat {

	/**
	 * 将日期对象格式化为指定格式的日期字符串
	 * @param date 传入的日期对象
	 * @param format 格式
	 * @return
	 */
	public static String formatDate(Date date,String format){
		String result="";
		SimpleDateFormat sdf=new SimpleDateFormat(format);
		if(date!=null){
			result=sdf.format(date);
		}
		return result;
	}
	
	/**
	 * 将日期字符串转换成一个日期对象 
	 * @param dateStr 日期字符串
	 * @param format 格式
	 * @return
	 * @throws ParseException 
	 */
	public static Date formatDate(String dateStr,String format) throws ParseException{
		SimpleDateFormat sdf=new SimpleDateFormat(format);
		return sdf.parse(dateStr);
	}
	
	public static void main(String[] args) throws ParseException {
		Date date=new Date();
		
		System.out.println(formatDate(date,"yyyy-MM-dd"));
		System.out.println(formatDate(date,"yyyy-MM-dd HH:mm:ss"));
		System.out.println(formatDate(date,"yyyy年MM月dd日HH时mm分ss秒"));
		
		String dataStr="1989-11-02 18:01:41";
		Date date2=formatDate(dataStr,"yyyy-MM-dd HH:mm:ss");
		System.out.println(formatDate(date2,"yyyy-MM-dd HH:mm:ss"));
	}
}

运行输出:

2016-11-02

2016-11-02 18:06:50

2016年11月02日18时06分50秒

1989-11-02 18:01:41




关键字:   java     日期类  
关注Java1234微信公众号
博主信息
Java1234_小锋
(知识改变命运,技术改变世界)
Powered by Java1234 V3.0 Copyright © 2012-2016 Java知识分享网 版权所有