美国上市公司,专注Java培训21年

Java教程:一个 Java 时间工具类


java教程主要包含了对时间操作的一些工具方法!

package com..util;

import java.sql.Timestamp;

import java.text.SimpleDateFormat;

import java.util.Calendar;

import java.util.Date;

public class DataUtil {

/**

* 功能: 将日期对象按照某种格式进行转换,返回转换后的字符串

*

* @param date 日期对象

* @param pattern 转换格式 例:yyyy-MM-dd

*/

public static String DateToString(Date date, String pattern) {

String strDateTime = null;

SimpleDateFormat formater = new SimpleDateFormat(pattern);

strDateTime = date == null ? null : formater.format(date);

return strDateTime;

}

/**

* 功能: 将传入的日期对象按照yyyy-MM-dd格式转换成字符串返回

*

* @param date 日期对象

* @return String

*/

public static String DateToString(Date date) {

String _pattern = "yyyy-MM-dd";

return date == null ? null : DateToString(date, _pattern);

}

/**

* 功能: 将传入的日期对象按照yyyy-MM-dd HH:mm:ss格式转换成字符串返回

*

* @param date 日期对象

* @return String

*/

public static String DateTimeToString(Date date) {

String _pattern = "yyyy-MM-dd HH:mm:ss";

return date == null ? null : DateToString(date, _pattern);

}

/**

* 功能: 将插入的字符串按格式转换成对应的日期对象

*

* @param str 字符串

* @param pattern 格式

* @return Date

*/

public static Date StringToDate(String str, String pattern) {

Date dateTime = null;

try {

if (str != null && !str.equals("")) {

SimpleDateFormat formater = new SimpleDateFormat(pattern);

dateTime = formater.parse(str);

}

} catch (Exception ex) {

}

return dateTime;

}

/**

* 功能: 将传入的字符串按yyyy-MM-dd格式转换成对应的日期对象

*

* @param str 需要转换的字符串

* @return Date 返回值

*/

public static Date StringToDate(String str) {

String _pattern = "yyyy-MM-dd";

return StringToDate(str, _pattern);

}

/**

* 功能: 将传入的字符串按yyyy-MM-dd HH:mm:ss格式转换成对应的日期对象

*

* @param str 需要转换的字符串

* @return Date

*/

public static Date StringToDateTime(String str) {

String _pattern = "yyyy-MM-dd HH:mm:ss";

return StringToDate(str, _pattern);

}

/**

* 功能: 将传入的字符串转换成对应的Timestamp对象

*

* @param str 待转换的字符串

* @return Timestamp 转换之后的对象

* @throws Exception

* Timestamp

*/

public static Timestamp StringToDateHMS(String str) throws Exception {

Timestamp time = null;

time = Timestamp.valueOf(str);

return time;

}

/**

* 功能: 根据传入的年月日返回相应的日期对象

*

* @param year 年份

* @param month 月份

* @param day 天

* @return Date 日期对象

*/

public static Date YmdToDate(int year, int month, int day) {

Calendar calendar = Calendar.getInstance();

calendar.set(year, month, day);

return calendar.getTime();

}

/**

* 功能: 将日期对象按照MM/dd HH:mm:ss的格式进行转换,返回转换后的字符串

*

* @param date 日期对象

* @return String 返回值

*/

public static String communityDateToString(Date date) {

SimpleDateFormat formater = new SimpleDateFormat("MM/dd HH:mm:ss");

String strDateTime = date == null ? null : formater.format(date);

return strDateTime;

}

public static Date getMaxDateOfDay(Date date) {

if (date == null) {

return null;

} else {

Calendar calendar = Calendar.getInstance();

calendar.setTime(date);

calendar.set(11, calendar.getActualMaximum(11));

calendar.set(12, calendar.getActualMaximum(12));

calendar.set(13, calendar.getActualMaximum(13));

calendar.set(14, calendar.getActualMaximum(14));

return calendar.getTime();

}

}

public static Date getMinDateOfDay(Date date) {

if (date == null) {

return null;

} else {

Calendar calendar = Calendar.getInstance();

calendar.setTime(date);

calendar.set(11, calendar.getActualMinimum(11));

calendar.set(12, calendar.getActualMinimum(12));

calendar.set(13, calendar.getActualMinimum(13));

calendar.set(14, calendar.getActualMinimum(14));

return calendar.getTime();

}

}

/**

* 功能:返回传入日期对象(date)之后afterDays天数的日期对象

*

* @param date 日期对象

* @param afterDays 往后天数

* @return java.util.Date 返回值

*/

public static Date getAfterDay(Date date, int afterDays) {

Calendar cal = Calendar.getInstance();

cal.setTime(date);

cal.add(Calendar.DATE, 1);

return cal.getTime();

}

// day

/**

* 功能: 返回date1与date2相差的天数

*

* @param date1

* @param date2

* @return int

*/

public static int DateDiff(Date date1, Date date2) {

int i = (int) ((date1.getTime() - date2.getTime()) / 3600 / 24 / 1000);

return i;

}

// min

/**

* 功能: 返回date1与date2相差的分钟数

*

* @param date1

* @param date2

* @return int

*/

public static int MinDiff(Date date1, Date date2) {

int i = (int) ((date1.getTime() - date2.getTime()) / 1000 / 60);

return i;

}

// second

/**

* 功能: 返回date1与date2相差的秒数

*

* @param date1

* @param date2

* @return int

*/

public static int TimeDiff(Date date1, Date date2) {

int i = (int) ((date1.getTime() - date2.getTime()));

return i;

}

}


【免责声明】本文部分系转载,转载目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责,如涉及作品内容、版权和其它问题,请在30日内与我们联系,我们会予以重改或删除相关文章,以保证您的权益!

Java开发高端课程免费试学

大咖讲师+项目实战全面提升你的职场竞争力

  • 海量实战教程
  • 1V1答疑解惑
  • 行业动态分析
  • 大神学习路径图

相关推荐

更多
  • java语言中,char 类型变量是否能保存一个汉字?
    java语言中,char 类型变量是否能保存一个汉字?
    在 Java 语言中,可以使用 char 类型的变量来存储单个的字符,请问是否能用 char 类型的变量来存储一个汉字呢? 详情>>

    2015-10-15

  • 有史以来最牛的一张程序员职业路线图!
    有史以来最牛的一张程序员职业路线图!
    最近在琢磨程序员到底路在何方,经过不断的自虐和代入,终于在迷雾森林中得图一张,看之豁然开朗。独乐乐不如众乐乐,share了: 详情>>

    2018-05-22

  • java中变量和常量有什么区别?
    java中变量和常量有什么区别?
    在使用 Java 语言进行程序设计时,经常需要用到常量和变量来存储信息。请简单叙述变量和常量有什么区别? 详情>>

    2015-10-15

  • short 和 char 类型的取值范围各是多少?
    short 和 char 类型的取值范围各是多少?
    在使用 Java 语言进行程序设计时,经常需要使用 short 型和 char 型存储数值,请简述short 型和 char 型的取值范围各是多少? 详情>>

    2015-10-15

  • Java开班时间

    收起