您的位置:首页 > 编程语言 > Java开发

Java常用的时间工具类实例

2017-06-09 10:11 691 查看

本文实例讲述了Java常用的时间工具类。分享给大家供大家参考,具体如下:

package org.zhy.date;
import java.text.DateFormat;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;
import java.util.GregorianCalendar;
/**
* 时间类型工具类
*
* @author zhengyi
*
*/
public class DateUtils {
// 时间格式定义
public static final String DATE_PATTERN_YYYY_MM_DD = "yyyy-MM-dd"; // 2011-10-09
public static final String yyyyMMddhhmmss = "yyyyMMddhhmmss";// 20111009100155
public static final String yyyy_MM_ddhhMMss = "yyyy-MM-dd hh:MM:ss";// 2011-10-09
// 10:01:55
// 时间格式:年月日时分秒
public static final int YEAR = 1;// 年
public static final int MONTH = 2;// 月
public static final int DAY = 3; // 日
public static final int HOUROFDAY = 4;// 时
public static final int MINUTE = 5;// 分
public static final int SECOND = 6;// 秒
/**
* 将时间转换为字符串
*
* @param date
*      :需要转换的时间
* @param date_fomat
*      :时间格式
* @return String:转换后的格式
*/
public static String DateToString(java.util.Date date, String date_fomat) {
DateFormat df = new SimpleDateFormat(date_fomat);
return df.format(date);
}
/**
* 根据年月日时分秒生成Date并返回
*
* @param year
*      :年
* @param month
*      :月
* @param dayOfMonth
*      :日
* @param hourOfDay
*      :时
* @param minute
*      :分
* @param second
*      :秒
* @return
*/
public static Date stringToDate(int year, int month, int dayOfMonth,
int hourOfDay, int minute, int second) {
GregorianCalendar gc = new GregorianCalendar(year, month, dayOfMonth,
hourOfDay, minute, second);
Date dt = gc.getTime();
return dt;
}
/**
* 根据年月日生成Date并返回
*
* @param year
*      :年
* @param month
*      :月
* @param dayOfMonth
*      :日
* @return Date:返回的Date对象
*/
public static Date stringToDate(int year, int month, int dayOfMonth) {
GregorianCalendar gc = new GregorianCalendar(year, month, dayOfMonth);
Date dt = gc.getTime();
return dt;
}
/**
* 是否为闰年
*
* @param date
* @return
*/
public static boolean isLeapYear(Date date) {
GregorianCalendar gc = gcToDate(date);
return gc.isLeapYear(findYearByDate(date, YEAR));
}
/**
* 获得日期中的年月日时分秒
*
* @param date
*      :需要获取的时间
* @param type
*      :获取的类型,类内常量
* @return
*/
public static int findYearByDate(Date date, int type) {
Calendar cd = Calendar.getInstance();
cd.setTime(date);
int number=0;
switch (type) {
case YEAR :
number= cd.get(Calendar.YEAR);
break;
case MONTH :
number= cd.get(Calendar.MONTH);
break;
case DAY :
number= cd.get(Calendar.DAY_OF_MONTH);
break;
case HOUROFDAY :
number= cd.get(Calendar.HOUR_OF_DAY);
break;
case MINUTE :
number= cd.get(Calendar.MINUTE);
break;
case SECOND :
number= cd.get(Calendar.SECOND);
break;
default :
number= 0;
}
return number;
}
/**
* 私有函数,将Date类型转换为GregorianCalendar类型以便类内使用
*
* @param date
* @return
*/
private static GregorianCalendar gcToDate(Date date) {
GregorianCalendar gc = new GregorianCalendar();
gc.setTime(date);
return gc;
}
}

PS:这里再为大家推荐几款关于日期与天数计算的在线工具供大家使用:

在线日期/天数计算器:
http://tools.jb51.net/jisuanqi/date_jisuanqi

在线万年历日历:
http://tools.jb51.net/bianmin/wannianli

在线阴历/阳历转换工具:
http://tools.jb51.net/bianmin/yinli2yangli

Unix时间戳(timestamp)转换工具:
http://tools.jb51.net/code/unixtime

更多关于java相关内容感兴趣的读者可查看本站专题:《java日期与时间操作技巧汇总》、《Java数据结构与算法教程》、《Java操作DOM节点技巧总结》和《Java缓存操作技巧汇总

希望本文所述对大家java程序设计有所帮助。

您可能感兴趣的文章:

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  Java 时间 工具类