只要把距离公元1年1月1日的天数除以7取余数,1+余数就是星期几了。
注意:注意计算闰年
//1。将字符串用split切割得到年月日组成的数组 String s2=“2011-11-11 11:11:11”;
//2。Calendar对象的获得,abstract并且构造函数是protected
//本地时区和本地的习惯,系统日期
Calendar calendar=Calendar。getInstance();
//3。将Calendar转换成输入的日期
用calendar对象的set(Calendar。对应常量(如YEAR等),输入的对应值)方法设值
//4。获得判断用的值
//获得年份
int year=calendar。get(Calendar。YEAR);
//获得这个月最多的天数
int maxDay=today。getActualMaximum(Calendar。DATE);
//获得当前日期是一周中的第几天,注意这个数不代表星期几而是你电脑上日历的第几列
int weekDay=calendar。get(Calendar。DAY_OF_WEEK);
}
好了就这么多吧,有这些差不多了,还有什么继续问哈
if(leap==1 && nian>3) // 这边的nian>3可能有问题
sum++;
看一下我的回答: http://zhidao。baidu。com/question/37067267
package day03;
import java。util。Calendar;
import java。util。Date;
import java。text。ParseException;
import java。text。SimpleDateFormat;
import java。util。Scanner;
public class LeapYear {
public static void main(String[] args) throws ParseException {
Scanner scan=new Scanner(System。in);
String input=scan。nextLine();
SimpleDateFormat fmt= new SimpleDateFormat(“yyyy-M-d”);
Date time=fmt。parse(input);
Calendar cal=Calendar。getInstance();
cal。setTime(time);
int year=cal。get(Calendar。YEAR);
System。out。println(year);
boolean flag=(year%4==0&&year%100!=0)||year%400==0;
String str=flag?year+“是闰年”:year+“不是闰年”;
System。out。println(str);
int weekInt=cal。get(Calendar。DAY_OF_WEEK);
switch(weekInt) {
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;
case 7:
System。out。println(“星期六”);
break;
}
}
}
大哥 你知道你悬赏的有多么少么。这道题当送你,可以不采纳,以前做过的代码!
包名改成你自己用的 导入的包别导入错了,输入的日期 2017-12-20 这种格式!