java时间工具类详解编程语言

开始记笔记了,一个好的开始

package com.hanfengyeqiao.utils; 
 
import java.text.SimpleDateFormat; 
import java.util.Calendar; 
import java.util.Date; 
 
/** 
 * 日期工具类 
 */ 
public class DateUtil { 
 
    /** 
     * 根据Date型的日期,取Calendar型的日期 
     * @param date Date型的日期 
     * @return Calendar型的日期 
     */ 
    public static Calendar getCalendar(Date date) { 
        Calendar cal = Calendar.getInstance(); 
        cal.setTime(date); 
        return cal; 
    } 
 
    /** 
     * 日期计算,日加减 
     * @param date  初始日期 
     * @param amount 天数增量(负数为减) 
     * @return 计算后的日期 
     */ 
    public static Date addDays(Date date, int amount) { 
    	Calendar cd =getCalendar(date);    
        cd.add(Calendar.DATE, amount); 
        return cd.getTime(); 
    } 
 
    /** 
     * 判断指定年份日期的年份是否为闰年 
     * @param date 日期 
     * @return 闰年ture,非闰年false 
     */ 
    public static boolean isLeapYear(Date date) { 
        int year = getCalendar(date).get(Calendar.YEAR); 
        return isLeapYear(year); 
    } 
 
    /** 
     * 判断指定年份日期的年份是否为闰年 
     * @param year 年份数字 
     * @return 闰年ture,非闰年false 
     */ 
    public static boolean isLeapYear(int year) { 
        if ((year % 400) == 0) { 
            return true; 
        } 
        else if ((year % 4) == 0) { 
            if ((year % 100) == 0) { 
                return false; 
            } 
            else { 
                return true; 
            } 
        } 
        else { 
            return false; 
        } 
    } 
 
    /** 
     * 	获取指定日期前一个月的第一天 
     */ 
    public static String getAgoMonthFirstDay(Date date){ 
    	Calendar calendar =getCalendar(date); 
    	SimpleDateFormat sdf=new SimpleDateFormat("YYYY-MM-dd"); 
    	calendar.add(Calendar.MONTH, -1); 
    	calendar.set(Calendar.DAY_OF_MONTH,1); 
        return sdf.format(calendar.getTime()); 
    } 
     
    /** 
     * 	获取指定日期前一个月的最后一天 
     */ 
    public static String getAgoMonthLastDay(Date date){ 
    	Calendar calendar =getCalendar(date); 
    	SimpleDateFormat sdf=new SimpleDateFormat("YYYY-MM-dd"); 
    	calendar.set(Calendar.DAY_OF_MONTH, 0); 
        return sdf.format(calendar.getTime()); 
    } 
     
    public static void main(String[] args) { 
		System.out.println(getAgoMonthLastDay(new Date())); 
	} 
} 

  

 

原创文章,作者:奋斗,如若转载,请注明出处:https://blog.ytso.com/tech/pnotes/16898.html

(0)
上一篇 2021年7月19日 19:40
下一篇 2021年7月19日 19:40

相关推荐

发表回复

登录后才能评论