4:给定一个日期2031-7-2,求出该日为星期几(已知2002-3-28为星期四)。只要求说明思路,不要写java code
这个可不可以 算出2002-3-28 和 2031-7-2 一共相差多少天,然后 取余 7 。 就能算出来周几
------解决方案--------------------呵呵,我是一个菜鸟,刚学java十天,学了Date,来解答最后一题,思路从题中可以知道2002年3月21是周日
于是直接先将2031.07.02与2002.3.21解析成毫秒数,算出这段时间里相差多少毫秒,再将毫秒数除以一天的毫秒数(24L*60*60*1000)转换为天数,即求出了,这两段时间相差多少天,再%7即可。
省去了还要考虑闰年,平年等一些问题。
呵呵,刚学,有的还不会表达,附上代码
public class Date
{
public static void main(String[] args) throws Exception
{
java.text.SimpleDateFormat f = new java.text.SimpleDateFormat("yy年MM月dd日 HH:mm:ss");
f = new java.text.SimpleDateFormat("yyyy.MM.dd");
java.util.Date m = f.parse("2002.03.31");
java.util.Date n = f.parse("2031.07.02");
long x = ((n.getTime() - m.getTime())/(24L*60*60*1000))%7;
System.out.println(x);
}
}