-
- 有如下程序,转化两个字符串数字为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