万年历—Java计算感恩节是哪天?
发表时间:2021-4-6
发布人:葵宇科技
浏览次数:54
2017年感恩节的日期:
2017年11月23日 星期四
(丁酉年(鸡年)十月初六)
公历11月第4个周四是感恩节(Thanksgiving Day)。是美国和加拿大共有的节日,由美国人民独创,原意是为了感谢上天赐予的好收成、感谢印第安人的帮助。
Java计算感恩节代码
[java] view plain copy
/**
*
* 开发公司:SOJSON在线工具 <p>
* 版权所有:? www.sojson.com<p>
* 博客地址:http://www.sojson.com/blog/ <p>
* <p>
*
* Java 感恩节计算
*
* <p>
*
* 区分 责任人 日期 说明<br/>
* 创建 周柏成 2017年5月20日 <br/>
*
* @author zhou-baicheng
* @email i@itboy.net
* @version 1.0,2017年5月20日 <br/>
*
*/
public static void main(String[] args) {
//计算2017年的感恩节
int year = 2017;
//计算感恩节,感恩节为每年的11月的第四个星期四
Calendar cal = Calendar.getInstance();
cal.set(Calendar.YEAR, year);
//因为从0开始,所以减1
cal.set(Calendar.MONTH, 11-1);
int maxDate = cal.getActualMaximum(Calendar.DATE);
int sundays = 0;
for(int i = 1; i <= maxDate; i ++) {
cal.set(Calendar.DATE, i);
//判断是周四,
if(cal.get(Calendar.DAY_OF_WEEK) == 4+1) {
sundays ++;
//第4个周四,返回
if(sundays == 4) {
break;
}
}
}
String date = new SimpleDateFormat("yyyy-MM-dd").format(cal.getTime());
System.out.printf("%s年的感恩节是:%s",year,date);
//2017年的感恩节是:2017-11-23
}