计算日期到天数转换
计算日期到天数转换
http://www.nowcoder.com/questionTerminal/769d45d455fe40b385ba32f97e7bcded
import java.util.Scanner;
public class Main {
private int leapMonth[] = {0, 31,29,31,30,31,30,31,31,30,31,30,31};
private int normalMonth[] = {0, 31,28,31,30,31,30,31,31,30,31,30,31};
private int result;
public Main() {
}
public int iConverDateToDay(int year, int month, int day) {
if (year <= 0 || month <= 0 || month > 12 || day <= 0) {
return result = -1;
}
boolean isLeapYear = false;
if (year % 400 == 0 || (year % 4 == 0 && year % 100 != 0)) {
isLeapYear = true;
}
if (isLeapYear && day > leapMonth[month]) {
return result = -1;
}
if (!isLeapYear && day > normalMonth[month]) {
return result = -1;
}
result = 0;
for (int i = 1; i < month; i++) {
if (isLeapYear) {
result += leapMonth[i];
}
else {
result += normalMonth[i];
}
}
result += day;
return 0;
}
public int getOutDay() {
return result;
}
public static void main(String[] args) {
Main solution = new Main();
Scanner in = new Scanner(System.in);
while (in.hasNextInt()) {
int year = in.nextInt(), month = in.nextInt(), day = in.nextInt();
solution.iConverDateToDay(year, month, day);
int result = solution.getOutDay();
System.out.println(result);
}
}
}
腾讯音乐娱乐集团公司福利 283人发布
