给你一个日期,请你设计一个算法来判断它是对应一周中的哪一天。
输入为三个整数:day
、month
和 year
,分别表示日、月、年。
您返回的结果必须是这几个值中的一个 {"Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday"}
。
示例 1:
输入:day = 31, month = 8, year = 2019
输出:"Saturday"
示例 2:
输入:day = 18, month = 7, year = 1999
输出:"Sunday"
示例 3:
输入:day = 15, month = 8, year = 1993
输出:"Sunday"
提示:
- 给出的日期一定是在
1971
到2100
年之间的有效日期。
import java.util.Stack;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;
public class Solution1185 {
public String dayOfTheWeek(int day, int month, int year) {
String[] d = { "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday", "Sunday" };
String mydate = String.valueOf(day) + "/" + String.valueOf(month) + "/" + String.valueOf(year);
SimpleDateFormat DateFor = new SimpleDateFormat("dd/MM/yyyy");
Date date = null;
try {
date = DateFor.parse(mydate);
} catch (ParseException e) {
e.printStackTrace();
}
String strDateFormat = "u";
SimpleDateFormat sdf = new SimpleDateFormat(strDateFormat);
int my = Integer.parseInt(sdf.format(date)) - 1;
return d[my];
}
public static void main(String[] args) {
Solution1185 s = new Solution1185();
int day = 31;
int month = 8;
int year = 2019;
System.out.println(s.dayOfTheWeek(day, month, year));
}
}