獲取當前日期的上一季度的首日

隨筆備忘

package ***;

import java.text.SimpleDateFormat;
import java.time.LocalDate;
import java.util.ArrayList;
import java.util.Calendar;
import java.util.Date;
import java.util.stream.Stream;

public class test {

  public static void main(String[] args) {

    Calendar c = Calendar.getInstance();
//    int currentMonth = c.get(Calendar.MONTH) + 1;
//    int currentMonth = 1;
    ArrayList<Integer> integers = new ArrayList<>();
    for (int i = 1; i < 13; i++) {
      integers.add(i);
    }
    integers.stream().forEach(i->printStartDate(c,i));
//    printStartDate(c, currentMonth);


  }

  private static void printStartDate(Calendar c, int currentMonth) {
    SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd");
    Date now = null;
    try {
      if (currentMonth >= 1 && currentMonth <= 3) {
        c.set(Calendar.MONTH, -3);
      } else if (currentMonth >= 4 && currentMonth <= 6) {
        c.set(Calendar.MONTH, 0);
      } else if (currentMonth >= 7 && currentMonth <= 9) {

        c.set(Calendar.MONTH, 3);
      } else if (currentMonth >= 10 && currentMonth <= 12) {
        c.set(Calendar.MONTH, 6);
      }
      c.set(Calendar.DATE, 1);
    } catch (Exception e) {
      e.printStackTrace();
    }
    System.out.println("第"+currentMonth+"月: "+format.format(c.getTime()));
    LocalDate now1 = LocalDate.now();
    //日曆有記憶?需要重置到當前日期
    c.set(now1.getYear(),now1.getMonthValue(),now1.getDayOfMonth());

//    System.out.println(LocalDate.now());
  }
}
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章