首页 > 代码库 > 根据传入时间得到上一年下一年第一天和最后一天

根据传入时间得到上一年下一年第一天和最后一天

/**
  * 获取上一年第一天的时间 返回yyyy-MM-dd
  *
  * @param enDate
  * @return
  */
 public Date getPreviousYearFirst(Date enDate) {
  Date date = enDate;
  SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy");// 可以方便地修改日期格式
  String years = dateFormat.format(date);//得到年
  int years_value = http://www.mamicode.com/Integer.parseInt(years);
  years_value--;//上一年
  String fristStr = years_value + "-01-01";//得到上一年第一天
  try {
   date = new SimpleDateFormat("yyyy-MM-dd").parse(fristStr);
  } catch (ParseException e) {
   e.printStackTrace();
  }
  return date;
 }

 /**
  * 获取上一年最后一天的时间 返回yyyy-MM-dd
  * @param enDate
  * @return
  */
 public Date getPreviousYearEnd(Date enDate) {
  Date date = enDate;
  SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy");// 可以方便地修改日期格式
  String years = dateFormat.format(date);//得到年
  int years_value = http://www.mamicode.com/Integer.parseInt(years);
  years_value--;//上一年
  String fristStr = years_value + "-12-31";//得到上一年最后一天
  try {
   date = new SimpleDateFormat("yyyy-MM-dd").parse(fristStr);
  } catch (ParseException e) {
   e.printStackTrace();
  }
  return date;
 }

 /**
  * 获取下一年第一天的时间 返回yyyy-MM-dd
  *
  * @param enDate
  * @return
  */
 public Date getNextYearFirst(Date enDate) {
  Calendar curr = Calendar.getInstance();
  curr.setTime(enDate);//使用给定的 enDate 设置此 Calendar 的时间
  curr.set(Calendar.YEAR,curr.get(Calendar.YEAR)+1);//得到下一年
  Date date=curr.getTime();
  GregorianCalendar gc = (GregorianCalendar) Calendar.getInstance();
  gc.setTime(date);
  gc.get(Calendar.YEAR);
  gc.set(gc.get(Calendar.YEAR), 0, 1);//设置下一年第一天
  return gc.getTime();
 }

 /**
  * 获取下一年最后一天的时间 返回yyyy-MM-dd
  *
  * @param enDate
  * @return
  */
 public Date getNextYearEnd(Date enDate) {
  Calendar curr = Calendar.getInstance();
  curr.setTime(enDate);
  curr.set(Calendar.YEAR,curr.get(Calendar.YEAR)+1);//得到下一年
  Date date=curr.getTime();
  GregorianCalendar gc = (GregorianCalendar) Calendar.getInstance();
  gc.setTime(date);
  gc.get(Calendar.YEAR);
  gc.set(gc.get(Calendar.YEAR), 11, 31);//设置下一年最后一天
  return gc.getTime();
 }