`

java 日期工具类

    博客分类:
  • java
阅读更多
public class CalendarUtil implements Serializable {

    /**  */
    private static final long serialVersionUID = 3491231220111885316L;

    // 获得当前日期
    public static String getDate() {
        Calendar cal = Calendar.getInstance();
        return getDate(cal);
    }

    // 获得日期
    private static String getDate(Calendar cal) {
        String v_strDate = "";
        SimpleDateFormat formatter = new SimpleDateFormat("yyyyMMdd");
        v_strDate = formatter.format(cal.getTime());
        return v_strDate;
    }

    // 获得本周X的日期
    public static String getThisMondayDate(int dayOfWeek) {
        Calendar cal = Calendar.getInstance();
        cal.setFirstDayOfWeek(Calendar.MONDAY);
        int mondayPlus = getDayOfWeek(dayOfWeek);
        cal.set(Calendar.DAY_OF_WEEK, mondayPlus);
        return getDate(cal);
    }

    // 获得下周X的日期
    public static String getNextMondayDate(int dayOfWeek) {
        Calendar cal = Calendar.getInstance();
        cal.setFirstDayOfWeek(Calendar.MONDAY);
        int mondayPlus = getDayOfWeek(dayOfWeek);
        cal.set(Calendar.DAY_OF_WEEK, mondayPlus);
        cal.add(Calendar.DATE, 7);
        return getDate(cal);
    }

    /**
     * 获得本月X号的日期
     * 
     * @param day
     * @return
     */
    public static String getCurrentMonthBeginDate(String day) {
        Calendar cal = Calendar.getInstance();
        if ("LASTDAY".equals(day)) {
            cal.set(Calendar.DAY_OF_MONTH, cal.getActualMaximum(Calendar.DATE));
        } else {
            cal.set(Calendar.DAY_OF_MONTH, Integer.parseInt(day));
        }
        return getDate(cal);
    }

    /**
     * 获得当前日期
     * 
     * @param day
     * @return
     */
    public static String getCurrentDate() {
        Calendar cal = Calendar.getInstance();
        return getDate(cal);
    }

    /**
     * 获取星期
     * 
     * @param day
     * @return
     */
    public static int getDayOfWeek(int day) {
        int dayofweek = 0;
        switch (day) {
            case 1:
                dayofweek = Calendar.MONDAY;
                break;
            case 2:
                dayofweek = Calendar.TUESDAY;
                break;
            case 3:
                dayofweek = Calendar.WEDNESDAY;
                break;
            case 4:
                dayofweek = Calendar.THURSDAY;
                break;
            case 5:
                dayofweek = Calendar.FRIDAY;
                break;
            case 6:
                dayofweek = Calendar.SATURDAY;
                break;
            case 7:
                dayofweek = Calendar.SUNDAY;
                break;
        }
        return dayofweek;
    }

    /**
     * 获得下个月X号的日期
     * 
     * @param day
     * @return
     */
    public static String getNextMonthBeginDate(String day) {
        Calendar cal = Calendar.getInstance();

        if ("LASTDAY".equals(day)) {
            cal.set(Calendar.MONTH, cal.get(Calendar.MONTH) + 1);
            cal.set(Calendar.DAY_OF_MONTH, cal.getActualMaximum(Calendar.DATE));
        } else {
            cal.set(Calendar.MONTH, cal.get(Calendar.MONTH) + 1);
            cal.set(Calendar.DAY_OF_MONTH, Integer.parseInt(day));
        }
        return getDate(cal);
    }

    public static void main(String[] args) {
        // System.out.println(getCurrentMonthBeginDate("LASTDAY"));
//        System.out.println(getThisMondayDate(5));
//        System.out.println(getNextMondayDate(5));
        System.out.println(getCurrentDate());
    }
}

 

分享到:
评论

相关推荐

    Java日期工具类

    Java日期工具类 1、日期的各种格式化 2、获取当前年度 3、获取当前月份 4、获取当前天号数 5、获取当前时间往前推一个月的时间 6、获取上个月("MMM yyyy") 7、获取上个月("yyyymm") 8、获取上个月("yyyy-mm") 9、...

    java日期工具类

    java日期工具类,java日期工具类,java日期工具类,java日期工具类

    Java日期工具类,学习代码

    Java日期工具类是Java开发中不可或缺的一部分,它们用于处理日期和时间相关的操作。在Java中,日期和时间处理涉及到多个类和接口,如`java.util.Date`、`java.util.Calendar`、`java.text.SimpleDateFormat`以及Java...

    Java 日期比较工具类

    Java 日期比较工具类 各种日期操作及计算( 获取两个日期 间隔天数 间隔月数 格式化日期 )

    Java日期工具类,Java时间工具类,Java时间格式化

    本篇将围绕Java中的日期工具类和时间工具类展开讨论,同时会涉及到日期时间的格式化。 首先,Java 8之前,我们主要依赖`java.util.Date`和`java.text.SimpleDateFormat`这两个类来处理日期和时间。`Date`类用于表示...

    java 日期工具类 java 日期工具类

    public static final String PATTERN_YYYY_MM_DD = "yyyy-MM-dd";public static final String YYYY_MM_DD = "yyyyMMdd";public static final String PATTERN_YYYY_MM_DD2 = "yyyy/MM/dd";/** 完整时间 yyyy-MM-dd HH...

    DateUtil java日期工具类

    个人整理的java的关于Date对象的日期时间处理工具类,若存在问题还望大家在评论中提出,我将一直进行修改维护

    自封装java日期工具类上传

    这是日期工具类,后续会继续上传

    日期 dateutil Java 日期工具类

    快速日期格式化类 ,线程安全的 包括:获取 DateUtil.STYLE格式的日期 字符转日期 日期转字符 字符日期从src_format改为dest_format 返回当前系统日期时间等

    Java日期工具类DateUtils实例详解

    Java 日期工具类 DateUtils 实例详解 本文主要介绍了 Java 日期工具类 DateUtils 实例的实现和使用,涵盖了日期工具类的常用方法和变量,包括日期格式化、字符串转换、日期比较等。 日期工具类 DateUtils ...

    java日期工具类-各种转换

    各种日期格式化和转换 将 Calendar 转为字符串 获取当前月份的最后一天 根据 timestamp 生成各类时间状态串 计算两个日期之间相差的天数 等等等等

    最全的java时间(日期)工具类

    本文将深入探讨Java中的日期时间工具类,特别是基于给定的"DateUtil.java"文件,我们将聚焦在传统`java.util.Date`和`java.text.SimpleDateFormat`以及Java 8的`java.time`包中的相关类。 首先,我们来看看`java....

    java日期工具类DateUti

    一名优秀的程序员,不仅需要有着丰富解决问题的方案,...虽然网络上也有类似的工具类,但我愿意自己写的原因有三: 1、好代码并不容易找,不满足需要的倒是不少 2、可能存在未知的bug 3、丧失了巩固和提高自己的机会

    java日期工具类实例分享

    Java日期工具类在软件开发中扮演着重要角色,尤其是在处理与日期和时间相关的任务时。本文分享的`DateUtils`是一个自定义的日期工具类,它提供了多种格式化和解析日期的方法,以适应不同的需求。下面将详细介绍这个...

    java日期相关处理工具类大全

    在开发过程中,经常会判断日期处理。文档是开发过程中对时间处理,几乎包含不了所有用的转换,请放心使用。

Global site tag (gtag.js) - Google Analytics