给你一个字符串 date ,按 YYYY-MM-DD 格式表示一个 现行公元纪年法 日期。返回该日期是当年的第几天。
示例 1:
输入:date = "2019-01-09"
输出:9
解释:给定日期是2019年的第九天。
示例 2:
输入:date = "2019-02-10"
输出:41
截取标记每个月和特殊的闰月
class Solution {
public int dayOfYear(String date) {
//分别获取年月日,进行计算
int amount[] = {31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31};
int year = Integer.parseInt(date.substring(0,4));
int month = Integer.parseInt(date.substring(5,7));
int day = Integer.parseInt(date.substring(8,10));
if (year % 400 == 0 || (year % 4 == 0 && year % 100 != 0)) {
++amount[1];
}
for(int i=0;i<month-1;i++){
day+=amount[i];
}
return day;
}
}
标签:第几天,int,31,30,一年,year,date
From: https://www.cnblogs.com/xiaochaofang/p/17599849.html