-
- 有如下程序,转化两个字符串数字为date类型,并判断是历史上的星期几,是否同为星期一
代码如下:
public static void main(String[] args) throws ParseException {
-
//方法一:
-
String str1="2001-12-05";
-
String str2="2009-07-28";
-
SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd");//注意:MM必须大写,不然会识别为分钟mm
-
Date date1=sdf.parse(str1);
-
Date date2=sdf.parse(str2);
-
System.out.println("转化后的时间分别为; "+date1+" "+date2);
-
//方法二:
-
Calendar ca1=Calendar.getInstance();
-
Calendar ca2=Calendar.getInstance();
-
ca1.set(2001, 11, 05);
-
ca2.set(2009, 06, 28);
-
//注意:实际传入的值 一般会是月份比实际大一月,所以传值的时候要月份-1
-
//而且国外的星期一实际上是中国的星期日,故星期会比中国大1天,转化成中国星期要-1
-
// SimpleDateFormat sdf1=new SimpleDateFormat("yyyy-MM-dd"); //输出看读入的实际日期
-
// System.out.println(sdf1.format(ca1.getTime()));
-
System.out.println("两个日期分别是历史上的星期 "+(ca1.get(Calendar.DAY_OF_WEEK)-1)+" 和 星期 "+(ca2.get(Calendar.DAY_OF_WEEK)-1));
-
if((ca1.get(Calendar.DAY_OF_WEEK)-1)==(ca2.get(Calendar.DAY_OF_WEEK)-1)&&(ca1.get(Calendar.DAY_OF_WEEK)-1)==1){
-
System.out.println("两个日期都是星期一");
-
}
-
else
-
System.out.println("两个日期都不是星期一");
-
}
-
}
- //2015-08-18 12:01:01