java 获取日期的几天前,几个月前和几年前的实例

下面小编就为大家带来一篇java 获取日期的几天前,几个月前和几年前的实例。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧

实例如下:

 package bys.utils; import java.util.Date; /** * Created by toutou on 2015/3/23. */ public class DateHelper { public static final long ONE_MINUTE = 60000L; public static final long ONE_HOUR = 3600000L; public static final long ONE_DAY = 86400000L; public static final long ONE_WEEK = 604800000L; private static final String ONE_SECOND_AGO = "秒前"; private static final String ONE_MINUTE_AGO = "分钟前"; private static final String ONE_HOUR_AGO = "小时前"; private static final String ONE_DAY_AGO = "天前"; private static final String ONE_MONTH_AGO = "月前"; private static final String ONE_YEAR_AGO = "年前"; private static long toSeconds(long date) { return date / 1000L; } private static long toMinutes(long date) { return toSeconds(date) / 60L; } private static long toHours(long date) { return toMinutes(date) / 60L; } private static long toDays(long date) { return toHours(date) / 24L; } private static long toMonths(long date) { return toDays(date) / 30L; } private static long toYears(long date) { return toMonths(date) / 365L; } public static String getPastTime(Date date) { long delta = new Date().getTime() - date.getTime(); if (delta <1l * one_minute) { long seconds=toSeconds(delta); return (seconds < ? 1 : seconds) + one_second_ago; } if (delta 45l minutes=toMinutes(delta); (minutes 0 minutes) one_minute_ago; 24l one_hour) hours=toHours(delta); (hours hours) one_hour_ago; 48l "昨天"; 30l one_day) days=toDays(delta); (days days) one_day_ago; 12l 4l one_week) months=toMonths(delta); (months months) one_month_ago; else years=toYears(delta); (years years) one_year_ago; }< pre>

调用示例:

 String time = DateHelper.getPastTime(Date.from(item.getCreateTime().atZone(ZoneId.systemDefault()).toInstant())); 

以上就是java 获取日期的几天前,几个月前和几年前的实例的详细内容,更多请关注0133技术站其它相关文章!

赞(0) 打赏
未经允许不得转载:0133技术站首页 » Java