给你一个字符串 date
,按 YYYY-MM-DD
格式表示一个 现行公元纪年法 日期。返回该日期是当年的第几天
class Solution {public int dayOfYear(String date) {int year = Integer.parseInt(date.substring(0,4));int mouth = Integer.parseInt(date.substring(5,7));int day = Integer.parseInt(date.substring(8));int[] days = {31,28,31,30,31,30,31,31,30,31,30,31};// 对400取余是保留类似于2000年的闰年// 对100取余不等于0 是为了剔除1900这样的平年if(year % 400 == 0 || (year % 4 == 0 && year % 100 != 0)){days[1]++;}int res=0;for(int i=0;i<mouth-1;i++){res += days[i];}return res + day;}
}
。