3. Метод isDateOdd() должен возвращать true, если количество дней с начала года - нечетное число, иначе false.
Подскаите плиз что не так делаю.
package com.javarush.task.task08.task0827;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.Locale;
/*
Работа с датой
*/
public class Solution {
public static void main(String[] args) throws ParseException {
System.out.println(isDateOdd("MAY 1 2013"));
}
public static boolean isDateOdd(String date) throws ParseException {
SimpleDateFormat formated = new SimpleDateFormat("MMMM d yyyy", Locale.ENGLISH);
//Милисекунд до MAY 1 2013
Date datan = formated.parse(date);
// Милисекунд до начала годаMAY 1 2013
Long DataK = datan.getTime();
//Установим начало годя для MAY 1 2013
datan.setHours(0);
datan.setMinutes(0);
datan.setSeconds(0);
datan.setDate(1);
datan.setMonth(0);
// Милисекунд до начала годаMAY 1 2013
Long DataN = datan.getTime();
long msDay = 24 * 60 * 60 * 1000;
//Разница
Long res = (DataK/msDay - DataN/msDay)+1;
if (res % 2 == 0)
return false;
else
return true;
}
}
package com.javarush.task.task08.task0827;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.Locale;
/*
Работа с датой
*/
public class Solution {
public static void main(String[] args) throws ParseException {
System.out.println(isDateOdd("MAY 1 2013"));
}
public static boolean isDateOdd(String date) throws ParseException {
SimpleDateFormat formated = new SimpleDateFormat("MMMM d yyyy", Locale.ENGLISH);
//Милисекунд до MAY 1 2013
Date datan = formated.parse(date);
// Милисекунд до начала годаMAY 1 2013
Long DataK = datan.getTime();
//Установим начало годя для MAY 1 2013
datan.setHours(0);
datan.setMinutes(0);
datan.setSeconds(0);
datan.setDate(1);
datan.setMonth(0);
// Милисекунд до начала годаMAY 1 2013
Long DataN = datan.getTime();
long msDay = 24 * 60 * 60 * 1000;
//Разница
Long res = (DataK/msDay - DataN/msDay)+1;
if (res % 2 == 0)
return false;
else
return true;
}
}