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;
}
}
看完上述内容,你们掌握Java中的时间工具类有哪些的方法了吗?如果还想学到更多技能或想了解更多相关内容,欢迎关注亿速云行业资讯频道,感谢各位的阅读!
亿速云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。