JAVA Calendar类

https://www.runoob.com/java/java-date-time.html

定义Calendar:
Calendar cal = Calender.getInstance();
//getInstance 获取的是当前日期
设置默认日期使用set方法:
cal.set():
//例:
calendar.set(2000, Calendar.JANUARY,1);//时间初始化为2000,1,1

注:

一月:	January [ˈdʒænjuəri]		二月:	February [ˈfebruəri]

三月:	March [mɑdu:tʃ]				四月:	April [´eiprəl]

五月:	May [mei]					六月:	June [dʒu:n]

七月:	July [dʒu:ˈlai]				八月:	August [ɔ:ˈɡʌst]

九月:	September [səpˈtembə]		十月:	October [ɔkˈtəubə]

十一月:	November [nəuˈvembə]		十二月:	December [diˈsembə]
获取定义日期的内容使用get方法:
cal.get();
//例:
cal.get(Calendar.YEAR);

在这里插入图片描述
特殊的:AM_PM 返回1则表示是下午,返回0表示上午。

注:0 为 一月,1 为 二月…12 为 下一年的一月。

添加运算add()方法:
calendar.add();
//例:
calendar.add (Calendar.YEAR, 1)//年 
calendar.add (Calendar.MONTH, 1)//月 
calendar.add (Calendar.DATE, 1)//日 
calendar.add (Calendar.HOUR_OF_DAY, -1)//时 
calendar.add (Calendar.MINUTE, 1)//分 
calendar.add (Calendar.SECOND, 1)//秒 
calendar.add (Calendar.DATE, 7)//周

注:
	
	年份分为闰年与平年
	闰年2月为29天,比平年多一天。

	已知符合下列条件之一者是闰年:
		(1)能被4整除,但不能被100整除。
		(2)能被400整除。

题目描述
本题为填空题,只需要算出结果后,在代码中使用输出语句将所填结果输出即可。

小蓝每天都锻炼身体。

正常情况下,小蓝每天跑 11 千米。如果某天是周一或者月初(11 日),为了激励自己,小蓝要跑 22 千米。如果同时是周一或月初,小蓝也是跑 22 千米。

小蓝跑步已经坚持了很长时间,从 2000 年 1 月 1 日周六(含)到 2020 年 10 月 1 日周四(含)。请问这段时间小蓝总共跑步多少千米?

import java.util.Calendar;

public class Main {
    public static void main(String[] args) {
    	        Calendar calendar = Calendar.getInstance();
    	        calendar.set(2000, Calendar.JANUARY,1);//时间初始化为2000,1,1
    	        
    	        double step = 0;
    	        while (true){
    	            if (calendar.get(Calendar.YEAR) == 2020 && calendar.get(Calendar.MONTH) == Calendar.OCTOBER
    	                    && calendar.get(Calendar.DATE) == 2){//包含10.1所有定义10.2结束
    	                break;
    	            }
    	            if (calendar.get(Calendar.DAY_OF_WEEK) == 2 || calendar.get(Calendar.DATE) == 1){//week从1-星期天开始
    	                step += 2;
    	            }else {
    	                step++;
    	            }
    	            calendar.add(Calendar.DATE,1);//日期加一
    	        }
    	        System.out.println(String.format("%.0f", step));
    }
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值