JAVA和Nginx 教程大全

网站首页 > 精选教程 正文

java 日期工具类demo

wys521 2024-11-24 22:49:12 精选教程 18 ℃ 0 评论

以下是一个Java日期工具类的示例代码,其中包含了一些常用的日期操作方法,如日期格式化、日期比较、日期加减等:

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

public class DateUtils {
    public static final String DEFAULT_FORMAT = "yyyy-MM-dd HH:mm:ss";

    /**
     * 将日期格式化为字符串
     *
     * @param date   日期
     * @param format 格式字符串
     * @return 格式化后的字符串
     */
    public static String formatDate(Date date, String format) {
        if (date == null) {
            return null;
        }
        if (format == null || format.length() == 0) {
            format = DEFAULT_FORMAT;
        }
        SimpleDateFormat sdf = new SimpleDateFormat(format);
        return sdf.format(date);
    }

    /**
     * 将字符串解析为日期
     *
     * @param str    字符串
     * @param format 格式字符串
     * @return 解析后的日期
     */
    public static Date parseDate(String str, String format) throws Exception {
        if (str == null || str.length() == 0) {
            return null;
        }
        if (format == null || format.length() == 0) {
            format = DEFAULT_FORMAT;
        }
        SimpleDateFormat sdf = new SimpleDateFormat(format);
        return sdf.parse(str);
    }

    /**
     * 比较两个日期的大小
     *
     * @param d1 日期1
     * @param d2 日期2
     * @return 0表示相等,1表示d1大于d2,-1表示d1小于d2
     */
    public static int compareDate(Date d1, Date d2) {
        Calendar c1 = Calendar.getInstance();
        c1.setTime(d1);
        Calendar c2 = Calendar.getInstance();
        c2.setTime(d2);
        return c1.compareTo(c2);
    }

    /**
     * 获取指定日期之后(或之前)的若干天的日期
     *
     * @param date 日期
     * @param days 天数(可以为负数)
     * @return 计算后的日期
     */
    public static Date getRelativeDate(Date date, int days) {
        Calendar c = Calendar.getInstance();
        c.setTime(date);
        c.add(Calendar.DATE, days);
        return c.getTime();
    }
}

上述代码中的formatDate方法和parseDate方法用于将日期转换为字符串和将字符串转换为日期,它们都可以指定日期的格式字符串。

compareDate方法用于比较两个日期的大小,返回值为0表示相等,1表示第一个日期大于第二个日期,-1表示第一个日期小于第二个日期。

getRelativeDate方法用于计算指定日期之后(或之前)的若干天的日期,它的第二个参数可以为负数,表示计算之前的日期。

本文暂时没有评论,来添加一个吧(●'◡'●)

欢迎 发表评论:

最近发表
标签列表