Java Calendar使用指南

来源:互联网 发布:ai cc mac破解版下载 编辑:程序博客网 时间:2024/06/05 13:57

Java Calendar使用指南

@(JAVA)[java]

完整代码请见:https://github.com/lujinhong/lujinhong-commons/tree/master/lujinhong-commons-java/src/main/java/com/lujinhong/commons/java/calendar

1、某个日期的前后多少天是什么日期

//计算某个日期n天前后的日期,并指定打印格式。正值表示向后计算,负数表示向前计算。public static String getBeforeOrAfterDay(String startDay, int dayCount) throws ParseException {    SimpleDateFormat sf = new SimpleDateFormat("yyyyMMdd");    Calendar calendar = Calendar.getInstance();    Date date = sf.parse(startDay);    calendar.setTime(date);    calendar.add(calendar.DATE, dayCount);    Date day = calendar.getTime();    String returnDay = sf.format(day);    return returnDay;}

2、计算某个日期过去N天所有日期的集合

public static String[] getLastDays(String day, int dayCount) throws ParseException {    String[] days = new String[dayCount];    for (int i = 0; i < dayCount; i++) {        days[i] = getBeforeOrAfterDay(day, -i);    }    return days;}

3、判断某个日期是星期几

public static int getWeekDay(String day) throws ParseException {    SimpleDateFormat sf = new SimpleDateFormat("yyyyMMdd");    Calendar calendar = Calendar.getInstance();    Date date = sf.parse(day);    calendar.setTime(date);    //注意1:星期天,2:星期一.....7:星期六    return calendar.get(Calendar.DAY_OF_WEEK);}

4、判断是否周末

//判断某个日期是否工作日,星期六及星期天为非工作日,其余为工作日。返回值1:工作日,0:休息日。public static String getWorkDay(String day){    int weekDay = 0;    try {        weekDay = getWeekDay(day);    } catch (ParseException e) {        e.printStackTrace();    }    if (weekDay == Calendar.SATURDAY || weekDay == Calendar.SUNDAY) {        return "0";    } else {        return "1";    }}

5、判断是否白天

//判断某个时间是否工作时间。10:00~17:00为工作时间,21:00~06:00为休息时间。输入值为小时。返回值1:工作时间,0:休息时间,-1:其它时间。public static String getWorkTime(String time){    int hour = Integer.parseInt(time);    if(hour>=10 && hour<=16){        return "1";    }else if((hour>=0 && hour<=5) || (hour>=21 && hour<=23)){        return "0";    }else {        return "-1";    }}

6、打印当前时间

public static void  printCurrentTime(){    System.out.println(Calendar.getInstance().getTime());//Thu Feb 16 18:55:56 CST 2017}public static void main(String[] args) throws ParseException {    System.out.println(getBeforeOrAfterDay("20170201", -1));    System.out.println(getWeekDay("20170216"));    System.out.println(Arrays.toString(getLastDays("20170216", 30)));    printCurrentTime();}
0 0
原创粉丝点击