package cn.timer.api.utils; import java.util.Calendar; import java.util.Date; public class LevelPriceDateFromatUtils { /** * 时间运算 * @param unit * @param num * @param time * @return */ public static Long getTimestampByUnitAndNumAddTime(String unit,Long num,Long time) { //单位 1天 2月 3季 4年 5两年 Calendar calendar = LevelPriceDateFromatUtils.getCalendarByTimestamp(time); switch (unit) { case "1": calendar.add(Calendar.DATE, num.intValue()); break; case "2": calendar.add(Calendar.DAY_OF_MONTH, num.intValue()); break; case "3": calendar.add(Calendar.DAY_OF_MONTH, num.intValue()*3);//一季度等于三个月 break; case "4": calendar.add(Calendar.YEAR, num.intValue()); break; case "5": calendar.add(Calendar.YEAR, num.intValue()*2); for (int i = 0; i < num; i++) { calendar.add(Calendar.YEAR, 1);//买二送一 } break; default: break; } return calendar.getTimeInMillis(); } public static Calendar getCalendarByTimestamp(Long time) { Calendar cal = Calendar.getInstance(); cal.setTimeInMillis(time); return cal; } public static Long getTimestampByNow() { Date date = new Date(); return date.getTime(); } public static void main(String[] args) { //System.out.println(3/2); System.out.println(getCalendarByTimestamp(0L).get(Calendar.YEAR)); } }