package com.javarush.task.task08.task0827;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;
import java.util.GregorianCalendar;
import java.util.Locale;
/*
Работа с датой
*/
public class Solution {
public static void main(String[] args) throws ParseException {
System.out.println(isDateOdd("DECEMBER 22 2013"));
}
public static boolean isDateOdd(String date) throws ParseException {
SimpleDateFormat simpleDateFormat = new SimpleDateFormat("MMM d",
Locale.ENGLISH);
Date neededDate = simpleDateFormat.parse(date);
Date instantDate = simpleDateFormat.parse("JANUARY 1");
long duration = (neededDate.getTime() - instantDate.getTime())/86400000;
//86400000 - количество миллисекунд в сутках
//System.out.println(duration);
return duration % 2 > 0;
}
}
Компилируется и возвращает корректное значение
Однако валидатор ругается, дескать, значение возвращается некорректное
Мил человек, где я не прав?
Заранее спасибо
Платон
27 уровень
Орёт, хотя компилирует!
Решен
Комментарии (1)
- популярные
- новые
- старые
Для того, чтобы оставить комментарий Вы должны авторизоваться
Ksenia Volkova Java Developer в DXC Master
25 ноября 2020, 15:21полезный
Ну например - у тебя для "DECEMBER 22 2013" возвразает true, и для "DECEMBER 22 2014" тоже. Хотя казалось бы - в одном случае високосный год, а в другом - нет, и число дней от начала года должно быть разным.
+1