Java教程

Java8 中计算两个日期间隔多少年、多少月、多少天的实现

本文主要是介绍Java8 中计算两个日期间隔多少年、多少月、多少天的实现,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
import org.apache.commons.lang.time.DurationFormatUtils;
import java.util.Date;

public class DateUtil {
    /**
     * 计算两个日期间隔多少年、多少月、多少天的实现
     *
     * @param date
     * @return
     */
    public static String getYearToDate(Date date){
        Date now = new Date();
        String formatPeriod = DurationFormatUtils.formatPeriod(date.getTime(), now.getTime(), "y-M-d");
        String[] split = formatPeriod.split("-");
        int year = Integer.parseInt(split[0]);
        int month = Integer.parseInt(split[1]);
        int day = Integer.parseInt(split[2]);
        StringBuilder sb = new StringBuilder();
        if (year>0) {
            sb.append(year).append("年");
        }
        if (month>0) {
            sb.append(month).append("月");
        }
        if (day>0 && month==0) {
            sb.append(day).append("天");
        }
        System.out.println(sb);
        return sb.toString();
    }
}

测试

public static void main(String[] args) throws Exception {
	System.out.println("当前系统时间: "+LocalDate.now());
	String str = "1991-09-26 02:33:39";
	SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd");
	Date date = format.parse(str);
	// 30年3月
	getYearToDate(date);
}

 

这篇关于Java8 中计算两个日期间隔多少年、多少月、多少天的实现的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!