summaryrefslogtreecommitdiff
path: root/src/Q6/WeekDay.java
diff options
context:
space:
mode:
authormo <mo.khan@gmail.com>2019-07-13 16:00:56 -0600
committermo <mo.khan@gmail.com>2019-07-13 16:00:56 -0600
commit6d8f6b80e9bf6670f73e9ce6e9757cf0a38580be (patch)
tree9cbe4dfbdd1de481d8f4b57e58b8e68598411d38 /src/Q6/WeekDay.java
parent259209789902352ac48249e41719c89f4515d550 (diff)
validate day overflow
Diffstat (limited to 'src/Q6/WeekDay.java')
-rw-r--r--src/Q6/WeekDay.java5
1 files changed, 5 insertions, 0 deletions
diff --git a/src/Q6/WeekDay.java b/src/Q6/WeekDay.java
index 08233b0..31d90b4 100644
--- a/src/Q6/WeekDay.java
+++ b/src/Q6/WeekDay.java
@@ -8,6 +8,7 @@ public class WeekDay {
private static final int[] MONTHS = new int[] {31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31};
public String getWeekDay(int day, int month, int year) {
+ this.ensureValidDate(year, month, day);
return DAYS[daysSinceEpoch(day, month, year) % 7];
}
@@ -32,6 +33,10 @@ public class WeekDay {
return MONTHS[month - 1];
}
+ private void ensureValidDate(int year, int month, int day) {
+ if (day > MONTHS[month - 1]) throw new IllegalArgumentException();
+ }
+
public static void main(String[] args) {
Scanner in = new Scanner(System.in);