java比较两个时间年月份的大小

时间:2024-04-15 13:45:59

有时候需要对传入的两个时间的年和月份进行比较,根据大小结果进行操作。下面直接写一个自己用到java 比较的方法:

 

 

package com.shopping.test;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.*;


public class Test {
/**
     * 将传入的日期的年月得到一个值
     * @param date 日期
     * @return 获取一个唯一的年月数值
     */
    public static int getYearMonth(Date date){
        //传入日期
        Calendar calder = Calendar.getInstance();
        calder.setTime(date);//设置时间
        int year = calder.get(Calendar.YEAR);//获取年份
        int month=calder.get(Calendar.MONTH);//获取月份
        //返回年份乘以100加上月份的值,因为月份最多2位数,
        // 所以年份乘以100可以获取一个唯一的年月数值
        return year*100+month;
    }

    public static void main(String[] args) {
        SimpleDateFormat df = new SimpleDateFormat("yyyy-MM");
        String startDay = "2019-08-01";
        Date date;
        try {
             date = df.parse(startDay);
        }catch (ParseException e){
            e.printStackTrace();
            date=new Date();
        }
        int dateOne= getYearMonth(date);
        int dateTwo = getYearMonth(new Date());
        if(dateOne==dateTwo){
        //年月相等 System.out.println("两个日期的年月相等"); }else if(dateOne>dateTwo){
       //dateOne比dateTwo晚 System.out.println("dateOne比dateTwo的年月晚"); }else{
//dateOne比dateTwo早 System.out.println("dateOne比dateTwo的年月早"); } }