问题说明

求黑色星期五,满足一下条件

  1. 该月的13号
  2. 星期五

目的

  1. 熟悉API
  2. 没事做

代码

import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Scanner;

/**
 * 黑色星期五两个条件:
 *  1.13号
 *  2.星期五
 */

public class firday {
    public static void main(String[] args) {

        Scanner in = new Scanner(System.in);
        System.out.println("请输入截止年份(大于当前年份):");
        getDay(in.nextInt());
        in.close();

    }
    public static void getDay(int year){

        //获取当前日期
        Calendar calendar = Calendar.getInstance();

        //判断year是否小于当前日期
        if(year<calendar.get(Calendar.YEAR)){
            System.out.println("输入日期不得小于当前日期!");
            return;
        }
        //控制输出格式
        SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd");

        //算出黑色星期五日期
        int nowYear=calendar.get(Calendar.YEAR);
        while(nowYear<=year){
            for(int month=0; month<12; month++){
                //设置日期
                calendar.set(nowYear, month, 13);
                if((calendar.get(Calendar.DAY_OF_WEEK)-1)==5){
                    System.out.println(simpleDateFormat.format(calendar.getTime()));
                }
            }
            nowYear++;
        }           
    }
}
Logo

CSDN联合极客时间,共同打造面向开发者的精品内容学习社区,助力成长!

更多推荐