日期工具类

package com.item.util;

import com.item.base.common.utils.StringUtils;
import org.apache.commons.lang.time.DateFormatUtils;

import java.sql.Timestamp;
import java.text.DateFormat;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;
import java.util.TimeZone;

/**
 * 用途描述 日期工具类
 *
 * @author list
 * @version v0.1
 * @company
 * @date 2020-06-09 08:49
 */
public class DateUtil {
    private static SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd");
    private static SimpleDateFormat formatDateTime = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
    private static final String yyyy_MM_ddHH_mm_ss = "yyyy-MM-dd HH:mm:ss";
    private static final String yyyyMMddHHmmss = "yyyyMMddHHmmss";
    private static final String yyyy_MM_dd = "yyyy-MM-dd";
    private static final String yyyy__MM__dd = "yyyy/MM/dd";
    public static final String PATTERN_STANDARD = "yyyy-MM-dd HH:mm:ss";
    public static final String PATTERN_DATE = "yyyy-MM-dd";
    private static SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd");
    private static String[] parsePatterns = {"yyyy-MM-dd", "yyyy-MM-dd HH:mm:ss", "yyyy-MM-dd HH:mm", "yyyy/MM/dd", "yyyy/MM/dd HH:mm:ss", "yyyy/MM/dd HH:mm"};


    public static Long getTimeFromNow(Timestamp timestamp) {
        long time = new Timestamp(System.currentTimeMillis()).getTime();
        long timestampTime = timestamp.getTime();
        long result = (time - timestampTime) / 1000;
        long finalTime = 300 - result;
        if (timestampTime < time && (finalTime > 0 && finalTime <= 300)) {
            return finalTime;
        }
        return 0L;
    }

    public static int daysBetween(String smallDate,String bigDate){
        Date dateSmall = DateUtil.string2Date(smallDate, "yyyy-MM-dd");
        Date dateBig = DateUtil.string2Date(bigDate, "yyyy-MM-dd");
        if(dateBig.after(dateSmall)){
            try {
               return daysBetween(dateSmall, dateBig);
            } catch (ParseException e) {
                e.printStackTrace();
            }
        }else{
            try {
                return daysBetween(dateBig, dateSmall);
            } catch (ParseException e) {
                e.printStackTrace();
            }

        }
        return 0;

    }

    /**
     * 功能描述 计算两个日期之间相差的天数
     *
     * @param smallDate 在前的日期
     * @param bigDate   在后的日期
     * @return int
     * @author list
     * @version 1.0
     * @date 2020-06-09 11:05
     */
    public static int daysBetween(Date smallDate, Date bigDate) throws ParseException {
        SimpleDateFormat sdf = new SimpleDateFormat();
        smallDate = sdf.parse(sdf.format(smallDate));
        bigDate = sdf.parse(sdf.format(bigDate));
        long smallTime;
        long bigTime;
        if (bigDate.after(smallDate)) {
            smallTime = smallDate.getTime();
            bigTime = bigDate.getTime();
        } else {
            smallTime = bigDate.getTime();
            bigTime = smallDate.getTime();
        }
        long daysBetween = (bigTime - smallTime) / (24 * 3600 * 1000);
        return Integer.parseInt(String.valueOf(daysBetween));
    }

    /**
     * 功能描述 计算两个日期差,差的形式为:xx日xx时xx分xx秒xx毫秒
     *
     * @param smallDate 在前的日期
     * @param bigDate   在后的日期
     * @return java.lang.String
     * @author list
     * @version 1.0
     * @date 2020-06-09 16:25
     */
    public static String datesBetween(Date smallDate, Date bigDate) {
        if (smallDate == null || bigDate == null) {
            return null;
        }
        if (bigDate.after(smallDate)) {
            return translate(bigDate.getTime() - smallDate.getTime());
        } else {
            return translate(smallDate.getTime() - bigDate.getTime());
        }
    }

    /**
     * 功能描述 将给定的毫秒值转换为:xx日xx时xx分xx秒xx毫秒
     *
     * @param time 输入的毫秒值
     * @return java.lang.String
     * @author list
     * @version 1.0
     * @date 2020-06-09 15:54
     */
    public static String translate(long time) {
        long millisecond = time % 1000;
        long temp = time / 1000;
        long day = temp / (24 * 3600);
        long hour = (temp % (24 * 3600)) / (3600);
        long minute = (temp % (24 * 3600) % (3600)) / (60);
//        long second = (temp % (24 * 3600) % (3600)) % (60);
        long second = temp % (60);//比上一行的计算省时间
        StringBuilder sb = new StringBuilder();
        sb.append(day == 0 ? "" : day + " day ").append(hour == 0 && StringUtils.isNotNull(sb.toString()) ? "" : hour + " hour ").append(minute == 0 && StringUtils.isNotNull(sb.toString()) ? "" : minute + " minute ").append(second == 0 && StringUtils.isNotNull(sb.toString()) ? "" : second + " second ").append(millisecond == 0 && StringUtils.isNotNull(sb.toString()) ? "" : millisecond + " millisecond");
        return sb.toString();
    }

    /**
     * 功能描述 为指定的Date增加/减少一定数量的minutes
     *
     * @param date    基准
     * @param minutes 增加/减少的分钟数
     * @return java.util.Date
     * @author list
     * @version 1.0
     * @date 2020-06-09 17:22
     */
    public static Date addMinute(Date date, int minutes) {
        return addOrSubtract(date, Calendar.MINUTE, minutes);
    }

    /**
     * 功能描述 为指定的Date增加/减少一定数量的days
     *
     * @param date 基准
     * @param days 增加/减少的天数
     * @return java.util.Date
     * @author list
     * @version 1.0
     * @date 2020-06-09 17:24
     */
    public static Date addDays(Date date, int days) {
        return addOrSubtract(date, Calendar.DATE, days);
    }

    /**
     * 功能描述 为指定的Date增加/减少一定数量的月份
     *
     * @param date   基准
     * @param months 增加/减少的月份
     * @return java.util.Date
     * @author list
     * @version 1.0
     * @date 2020-06-09 17:25
     */
    public static Date addMonths(Date date, int months) {
        return addOrSubtract(date, Calendar.MONTH, months);
    }

    /**
     * 功能描述 为指定的Date增加/减少一定数量的年份
     *
     * @param date  基准
     * @param years 增加/减少的月份
     * @return java.util.Date
     * @author list
     * @version 1.0
     * @date 2020-07-29 11:31
     */
    public static Date addYears(Date date, int years) {
        return addOrSubtract(date, Calendar.YEAR, years);
    }

    /**
     * 功能描述 某一天的零点
     *
     * @param date
     * @return java.util.Date
     * @author list
     * @version 1.0
     * @date 2020-07-29 11:52
     */
    public static Date zeroInDay(Date date) {
        Calendar instance = Calendar.getInstance();
        instance.setTime(date);
        instance.set(Calendar.HOUR_OF_DAY, 0);
        instance.set(Calendar.MINUTE, 0);
        instance.set(Calendar.SECOND, 0);
        return instance.getTime();
    }

    /**
     * 功能描述 某时刻月初零点
     *
     * @param date
     * @return java.util.Date
     * @author list
     * @version 1.0
     * @date 2020-07-29 11:52
     */
    public static Date firstZeroInMonth(Date date) {
        Calendar instance = Calendar.getInstance();
        instance.setTime(date);
        instance.set(Calendar.DAY_OF_MONTH, 1);
        Date date1 = zeroInDay(instance.getTime());
        return date1;
    }

    /**
     * 功能描述 某时刻当年1月1日零点
     *
     * @param date
     * @return java.util.Date
     * @author list
     * @version 1.0
     * @date 2020-07-29 11:52
     */
    public static Date firstZeroInYear(Date date) {
        Calendar instance = Calendar.getInstance();
        instance.setTime(date);
        instance.set(Calendar.MONTH, 0);
        Date date1 = firstZeroInMonth(instance.getTime());
        return date1;
    }

    /**
     * 功能描述 前一天的此时刻
     *
     * @param date
     * @return java.util.Date
     * @author list
     * @version 1.0
     * @date 2020-07-29 11:52
     */
    public static Date theDayBefore(Date date) {
        Calendar instance = Calendar.getInstance();
        instance.setTime(date);
        int newDay = instance.get(Calendar.DAY_OF_MONTH);
        instance.set(Calendar.DAY_OF_MONTH, newDay - 1);
        return instance.getTime();
    }

    public static Date todayEnd(Date date){
        Calendar instance = Calendar.getInstance();
        instance.setTime(date);
        instance.set(Calendar.HOUR,23);
        instance.set(Calendar.MINUTE,59);
        instance.set(Calendar.SECOND,59);
        return instance.getTime();
    }


    /**
     * 功能描述 前一个月的此时刻,若上个月无29号,则顺延到1号
     *
     * @param date
     * @return java.util.Date
     * @author list
     * @version 1.0
     * @date 2020-07-29 11:52
     */
    public static Date theDayInLastMonth(Date date) {
        Calendar instance = Calendar.getInstance();
        instance.setTime(date);
        int newMonth = instance.get(Calendar.MONTH);
        instance.set(Calendar.MONTH, newMonth - 1);
        return instance.getTime();
    }

    /**
     * 功能描述 前一年的此时刻,若上一年无29号,则顺延到1号
     *
     * @param date
     * @return java.util.Date
     * @author list
     * @version 1.0
     * @date 2020-07-29 11:52
     */
    public static Date theDayInLastYear(Date date) {
        Calendar instance = Calendar.getInstance();
        instance.setTime(date);
        int newMonth = instance.get(Calendar.YEAR);
        instance.set(Calendar.YEAR, newMonth - 1);
        return instance.getTime();
    }

    /**
     * 功能描述 当前日期的年份
     *
     * @param date
     * @return int
     * @author list
     * @version 1.0
     * @date 2020-07-31 16:12
     */
    public static int inYear(Date date) {
        Calendar instance = Calendar.getInstance();
        instance.setTime(date);
        return instance.get(Calendar.YEAR);
    }

    /**
     * 功能描述 当前日期的月份(从一开始)
     *
     * @param date
     * @return int
     * @author list
     * @version 1.0
     * @date 2020-07-31 16:13
     */
    public static int inMonth(Date date) {
        Calendar instance = Calendar.getInstance();
        instance.setTime(date);
        return instance.get(Calendar.MONTH) + 1;
    }

    /**
     * 功能描述 当前日期的Day值
     *
     * @param date
     * @return int
     * @author list
     * @version 1.0
     * @date 2020-07-31 16:13
     */
    public static int onDay(Date date) {
        Calendar instance = Calendar.getInstance();
        instance.setTime(date);
        return instance.get(Calendar.DAY_OF_MONTH);
    }

    /**
     * 功能描述 当前日期的所在季度(1、2、3、4)
     *
     * @param date
     * @return int
     * @author list
     * @version 1.0
     * @date 2020-07-31 16:14
     */
    public static int isQuarter(Date date) {
        int month = inMonth(date);
        return month / 3 + 1;
    }




    /**
     * 功能描述 为指定的Date增加/减少一定数量的field.(field由Calendar类的final变量指定)
     *
     * @param date   基准
     * @param field  用于增加/减少的字段
     * @param amount 增加/减少的数量
     * @return java.util.Date
     * @author list
     * @version 1.0
     * @date 2020-06-09 16:56
     */
    public static Date addOrSubtract(Date date, int field, int amount) {
        Calendar calendar = Calendar.getInstance();
        calendar.setTime(date);
        calendar.add(field, amount);
        Date afterTime = calendar.getTime();
        return afterTime;
    }

    /**
     * 功能描述 格式化日期
     *
     * @param date 传入需格式化的日期
     * @return java.lang.String
     * @author list
     * @version 1.0
     * @date 2020-06-09 17:33
     */
    public static String format(Date date) {
        return format.format(date);
    }

    /**
     * 功能描述 格式化日期时间
     *
     * @param date 传入需格式化的日期
     * @return java.lang.String
     * @author list
     * @version 1.0
     * @date 2020-06-09 17:33
     */
    public static String formatDateTime(Date date) {
        return formatDateTime.format(date);
    }


    /**
     * 得到某月份的第一天(yyyy-MM-dd)。如参数为空,则得到当前月份的第一天
     *
     * @param dealDate
     * @return
     */
    public static String getMonthFirstDay(Date dealDate) {
        Calendar calendar = Calendar.getInstance();
        if (dealDate != null) {
            calendar.setTime(dealDate);
        }
        calendar.set(Calendar.DATE, 1);
        return df.format(calendar.getTime());
    }
    public static Date getMonthFirstDayForDate(Date dealDate) {
        Calendar instance = Calendar.getInstance();
        instance.setTime(dealDate);
        instance.set(Calendar.DATE, 1);
        instance.set(Calendar.HOUR_OF_DAY, 0);
        instance.set(Calendar.MINUTE, 0);
        instance.set(Calendar.SECOND, 0);
        return instance.getTime();
    }

//	public int calcTimeSeconds(Date startDate, Date endDate){
//
//	}

    public static String calcDiffDate(Date startDate, Date endDate) {
        long diffSeconds = endDate.getTime() - startDate.getTime();
        long day = diffSeconds / (24 * 60 * 60 * 1000);
        long hour = (diffSeconds / (60 * 60 * 1000) - day * 24);
        long min = ((diffSeconds / (60 * 1000)) - day * 24 * 60 - hour * 60);
        long s = (diffSeconds / 1000 - day * 24 * 60 * 60 - hour * 60 * 60 - min * 60);
        return "" + day + "天" + hour + "小时" + min + "分" + s + "秒";
    }

    /**
     * 得到某月份的最后一天(yyyy-MM-dd)。如参数为空,则得到当前月份的最后一天
     *
     * @param dealDate
     * @return
     */
    public static String getMonthLastDay(Date dealDate) {
        Calendar calendar = Calendar.getInstance();
        if (dealDate != null) {
            calendar.setTime(dealDate);
        }
        calendar.set(Calendar.DAY_OF_MONTH, calendar.getActualMaximum(Calendar.DAY_OF_MONTH));
        return df.format(calendar.getTime());
    }

    /**
     * 得到某个日期之后的几个月后的日期
     *
     * @param lastDealDate   上次处理的日期
     * @param intervalMonths 间隔的月份
     * @return
     */
    public static String getNextDealDate(Date lastDealDate, int intervalMonths) {
        Calendar cal = Calendar.getInstance();
        cal.setTime(lastDealDate);
        cal.add(Calendar.MONTH, intervalMonths);
        return df.format(cal.getTime());
    }

    /**
     * 获取某个日期间隔几天后的日期
     *
     * @param curentDate
     * @param intervalDays
     * @return
     * @throws ParseException
     */
    public static String getFutureDate(Date curentDate, int intervalDays) throws ParseException {
        Calendar cal = Calendar.getInstance();
        cal.setTime(curentDate);
        cal.add(Calendar.DAY_OF_MONTH, intervalDays);
        return df.format(cal.getTime());
    }

    /**
     * 将String类型的日期转换成Date类型
     *
     * @param strDate
     * @return
     * @throws Exception
     */
    public static Date toDate(String strDate) throws Exception {
        if (StringUtils.isEmpty(strDate)) {
            throw new Exception("格式化日期出错!");
        }
        return df.parse(strDate);
    }

    public static String getToday() throws Exception {
        return df.format(new Date());
    }

    /**
     * 将Date型日期转为String类型
     *
     * @param date
     * @return
     * @throws Exception
     */
    public static String dateToString(Date date) throws Exception {
        return df.format(date);
    }


    /**
     * 得到当前日期字符串 格式(yyyy-MM-dd)
     */
    public static String getDate() {
        return getDate("yyyy-MM-dd");
    }

    /**
     * 得到当前日期字符串 格式(yyyyMM)
     */
    public static String getMonthDate() {
        return getDate("yyyyMM");
    }

    /**
     * 得到当前日期字符串 格式(yyyyMMDD)
     */
    public static String getDayDate() {
        return getDate("yyyyMMdd");
    }

    /**
     * 得到当前日期字符串 格式(yyyy-MM-dd) pattern可以为:"yyyy-MM-dd" "HH:mm:ss" "E"
     */
    public static String getDate(String pattern) {
        return DateFormatUtils.format(new Date(), pattern);
    }

    /**
     * 得到给定日期字符串 格式(yyyy-MM-dd) pattern可以为:"yyyy-MM-dd" "HH:mm:ss" "E"
     *
     * @throws ParseException
     */
    public static String getFormatDate(String string, String pattern) throws ParseException {
        SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
        Date time = sdf.parse(string);
        return DateFormatUtils.format(time, pattern);
    }

    /**
     * 得到日期字符串 默认格式(yyyy-MM-dd) pattern可以为:"yyyy-MM-dd" "HH:mm:ss" "E"
     */
    public static String formatDate(Date date, Object... pattern) {
        String formatDate = null;
        if (pattern != null && pattern.length > 0) {
            formatDate = DateFormatUtils.format(date, pattern[0].toString());
        } else {
            formatDate = DateFormatUtils.format(date, "yyyy-MM-dd");
        }
        return formatDate;
    }

    public static String getNoSepStrDate() {
        String tempDate = formatDate(new Date(), "yyyy-MM-dd HH:mm:ss");
        return tempDate.replace("-", "").replace(":", "").replace(" ", "");
    }

    /**
     * 得到当前时间字符串 格式(HH:mm:ss)
     */
    public static String getTime() {
        return formatDate(new Date(), "HH:mm:ss");
    }

    /**
     * 得到当前日期和时间字符串 格式(yyyy-MM-dd HH:mm:ss)
     */
    public static String getDateTime() {
        return formatDate(new Date(), "yyyy-MM-dd HH:mm:ss");
    }

    /**
     * 得到当前年份字符串 格式(yyyy)
     */
    public static String getYear() {
        return formatDate(new Date(), "yyyy");
    }

    /**
     * 得到当前月份字符串 格式(MM)
     */
    public static String getMonth() {
        return formatDate(new Date(), "MM");
    }
    public static String getMonth(Date date) {
        return formatDate(date, "MM");
    }

    /**
     * 得到当天字符串 格式(dd)
     */
    public static String getDay() {
        return formatDate(new Date(), "dd");
    }

    /**
     * 得到小时字符串 格式(hh)
     */
    public static String getHour() {
        return formatDate(new Date(), "HH");
    }

    /**
     * 得到分钟字符串 格式(hh)
     */
    public static String getMinute() {
        return formatDate(new Date(), "mm");
    }

    /**
     * 得到秒钟字符串 格式(hh)
     */
    public static String getSecond() {
        return formatDate(new Date(), "ss");
    }

    /**
     * 得到当前星期字符串 格式(E)星期几
     */
    public static String getWeek() {
        return formatDate(new Date(), "E");
    }

    /**
     * 获取过去的天数
     *
     * @param date
     * @return
     */
    public static long pastDays(Date date) {
        long t = new Date().getTime() - date.getTime();
        return t / (24 * 60 * 60 * 1000);
    }

    public static String date2String(Date date, String pattern) {
        if (date == null) {
            throw new IllegalArgumentException("timestamp null illegal");
        }
        if (pattern == null || pattern.equals("")) {
            pattern = PATTERN_STANDARD;
        }
        SimpleDateFormat sdf = new SimpleDateFormat(pattern);
        return sdf.format(date);
    }

    public static Date string2Date(String strDate, String pattern) {
        if (strDate == null || strDate.equals("")) {
            throw new RuntimeException("str date null");
        }
        if (pattern == null || pattern.equals("")) {
            pattern = PATTERN_DATE;
        }
        SimpleDateFormat sdf = new SimpleDateFormat(pattern);
        Date date = null;

        try {
            date = sdf.parse(strDate);
        } catch (ParseException e) {
            throw new RuntimeException(e);
        }
        return date;
    }

    public static Date getStartTimeOfDate(Date currentDate) {
        String strDateTime = date2String(currentDate, "yyyy-MM-dd") + " 00:00:00";
        return string2Date(strDateTime, "yyyy-MM-dd hh:mm:ss");
    }

    public static Date getEndTimeOfDate(Date currentDate) {
        String strDateTime = date2String(currentDate, "yyyy-MM-dd") + " 23:59:59";
        return string2Date(strDateTime, "yyyy-MM-dd hh:mm:ss");
    }

    public static String getStartTimeStringOfDate(Date currentDate) {
        return date2String(currentDate, "yyyy-MM-dd") + " 00:00:00";
    }

    public static String getEndTimeStringOfDate(Date currentDate) {
        return date2String(currentDate, "yyyy-MM-dd") + " 23:59:59";
    }

    public static Date getFirstDayOfMonth(Calendar c) {
        int year = c.get(Calendar.YEAR);
        int month = c.get(Calendar.MONTH);
        int day = 1;
        c.set(year, month, day, 0, 0, 0);
        return c.getTime();
    }

    public static Date getLastDayOfMonth(Calendar c) {
        int year = c.get(Calendar.YEAR);
        int month = c.get(Calendar.MONTH) + 1;
        int day = 1;
        if (month > 11) {
            month = 0;
            year = year + 1;
        }
        c.set(year, month, day - 1, 0, 0, 0);
        return c.getTime();
    }

    public static boolean isToday(String str, String formatStr) throws Exception {
        SimpleDateFormat format = new SimpleDateFormat(formatStr);
        Date date = null;
        try {
            date = format.parse(str);
        } catch (ParseException e) {
            throw e;
        }
        Calendar c1 = Calendar.getInstance();
        c1.setTime(date);
        int year1 = c1.get(Calendar.YEAR);
        int month1 = c1.get(Calendar.MONTH) + 1;
        int day1 = c1.get(Calendar.DAY_OF_MONTH);
        Calendar c2 = Calendar.getInstance();
        c2.setTime(new Date());
        int year2 = c2.get(Calendar.YEAR);
        int month2 = c2.get(Calendar.MONTH) + 1;
        int day2 = c2.get(Calendar.DAY_OF_MONTH);
        if (year1 == year2 && month1 == month2 && day1 == day2) {
            return true;
        }
        return false;
    }


    /**
     * 计算当前时间的前天12点或者当前时间的后天时间,hour为0表示0点为12表示12点
     * @param amount
     */
    public static Date calculateTwelve(Integer amount,Integer hour,Integer minute,Integer second){
        DateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
        Calendar c = Calendar.getInstance();
        c.add(Calendar.DAY_OF_YEAR, amount);
        c.set(Calendar.HOUR_OF_DAY, hour);
        c.set(Calendar.MINUTE, minute);
        c.set(Calendar.SECOND, second);
        c.set(Calendar.MILLISECOND, 0);
        System.out.println(df.format(c.getTime()));
        return c.getTime();
    }

    /**
     * 获取当天凌晨日期
     * @return
     */
    public static Timestamp getNowDayZero(){
        long current=System.currentTimeMillis();//当前时间毫秒数
        long zero=current/(1000*3600*24)*(1000*3600*24)- TimeZone.getDefault().getRawOffset();//今天零点零分零秒的毫秒数
        return new Timestamp(zero);
    }
    public static void main(String[] args) {
        long current=System.currentTimeMillis();//当前时间毫秒数
        long zero=current/(1000*3600*24)*(1000*3600*24)- TimeZone.getDefault().getRawOffset();//今天零点零分零秒的毫秒数
        long twelve=zero+24*60*60*1000-1;//今天23点59分59秒的毫秒数
        long yesterday=System.currentTimeMillis()-24*60*60*1000;//昨天的这一时间的毫秒数
        System.out.println(new Timestamp(current));//当前时间
        System.out.println(new Timestamp(yesterday));//昨天这一时间点
        System.out.println(new Timestamp(zero));//今天零点零分零秒
        System.out.println(new Timestamp(twelve));//今天23点59分59秒

        System.out.println(getMMByStr("202102"));
    }
    /*public static void main(String[] args) throws ParseException {
        //System.out.println(onDay(new Date()));
        calculateTwelve(-1,0,0,0);
        calculateTwelve(-1,23,59,59);

        calculateTwelve(0,0,0,0);
        calculateTwelve(0,23,59,59);
    }*/
    /*
     * Wed Jul 29 00:00:00 CST 2020
     * Wed Jul 01 00:00:00 CST 2020
     * Wed Jul 01 00:00:00 CST 2020
     * Thu Jul 02 00:00:00 CST 2020
     * Sat Feb 01 00:00:00 CST 2020
     * Sat Feb 01 00:00:00 CST 2020
     * Wed Jan 01 00:00:00 CST 2020
     * */

    /**
     *
     * @param yyyyMM
     * @return
     */
    public static String getMMByStr(String yyyyMM){
        String substring = yyyyMM.substring(4);
        if(substring.startsWith("0")){
            return substring.substring(1);
        }
        return yyyyMM.substring(4);
    }

}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

程序员良哥

我看你骨骼惊奇,花钱买点知识吧

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值