java获取上个星期第一天和最后一天

package com.goldcn.jzgmanageplat.b2b.controller;

import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;
import java.util.GregorianCalendar;

import com.goldcn.common.utils.CommonUtils;

public class aa {
 public static void main(String[] args) throws Exception{
  aa tt = new aa();
  System.out.println("获取上周一日期:" + tt.getYesterday());
  System.out.println("获取上周日日期:" + tt.getPreviousWeekSunday());
  
 }

 public static int getMondayPlus() {
  Calendar cd = Calendar.getInstance();

  int dayOfWeek = cd.get(7) - 1;

  if (dayOfWeek == 1) {
   return 0;
  }

  return (1 - dayOfWeek);
 }

 public String getPreviousWeekSunday() {

  int weeks =- 1;

  int mondayPlus = getMondayPlus();

  GregorianCalendar currentDate = new GregorianCalendar();

  currentDate.add(5, mondayPlus + weeks);
  

  Date monday = currentDate.getTime();
  
  SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
  String preMonday = sdf.format(monday);
  
  //System.out.println("上周最后一天:"+CommonUtils.parseDateToLong(preMonday+" 23:59:59", "yyyy-MM-dd hh:mm:ss"));

  return preMonday;
 }

 public String getPreviousWeekday() throws Exception {
  int week=-1;

  int mondayPlus = getMondayPlus();

  GregorianCalendar currentDate = new GregorianCalendar();

  currentDate.add(5, mondayPlus + 7 * week);

  Date monday = currentDate.getTime();
  
  
  SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");

  String preMonday = sdf.format(monday);
  
  
  //System.out.println("上周第一天:"+CommonUtils.parseDateToLong(preMonday+" 00:00:00", "yyyy-MM-dd hh:mm:ss"));
  
  
  return preMonday;
 }

 public String getYesterday(){
  Calendar cal=Calendar.getInstance();
        cal.add(Calendar.DATE,-1);
        Date time=cal.getTime();
       
        SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd ");

  String yesterday = sdf.format(time);
  
  return yesterday;
 }
}

原文地址:https://www.cnblogs.com/cuijj/p/4561805.html