这个用java输入年月日信息,输出这天是这年的第几天怎么写啊?

如题所述

import java.util.Scanner;
public class shiyan2
{
public static void main(String[] args)
{
int year,month,day,a=0,b=0;
Scanner reader=new Scanner(System.in);
System.out.println("请输入年份");
year=reader.nextInt();
System.out.println("请输入月份");
month=reader.nextInt();
System.out.println("请输入日");
day=reader.nextInt();
for(int i=1;i<month;i++)
{
switch(month)
{
case 1:
case 3:
case 5:
case 7:
case 8:
case 10:
case 12:
a=31;
break;
case 2:
if(year%4==0&&year%100!=0||year%400==0)
a=29;
else
a=28;
break;
case 4:
case 6:
case 9:
case 11:
a=30;
break;
}
b=b+a;
}
b=b+day;
System.out.println("这是这一年的第"+b+"天");
}
}
温馨提示:答案为网友推荐,仅供参考
第1个回答  2016-03-16
import java.text.DateFormat;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;
import java.util.GregorianCalendar;
import java.util.Scanner;

public class Demo {
public static void main(String[] args) throws ParseException {
System.out.println("输入时间(格式:yyyy-MM-dd):");
Scanner scan = new Scanner(System.in);
String temp = scan.nextLine();
DateFormat format = new SimpleDateFormat("yyyy-MM-dd");
Date date = format.parse(temp);
Calendar calendar = new GregorianCalendar();
calendar.setTime(date);
switch (calendar.get(Calendar.DAY_OF_WEEK)-1) {
case 0:
System.out.println("星期日");
break;
case 1:
System.out.println("星期一");
break;
case 2:
System.out.println("星期二");
break;
case 3:
System.out.println("星期三");
break;
case 4:
System.out.println("星期四");
break;
case 5:
System.out.println("星期五");
break;
case 6:
System.out.println("星期六");
break;
default:
break;
}
scan.close();
}

}本回答被网友采纳
相似回答