Java计算给定日期所在的周一、周日
public class DateUtil {
public static void main(String\[\] args) \{
try \{
String d = "2018-03-01";
System.out.println(getMonday(d));
System.out.println(getSunday(d));
\} catch (ParseException e) \{
e.printStackTrace();
\}
\}
//获得周日 的日期
public static String getSunday(String d) throws ParseException \{
SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd"); //设置时间格式
Calendar cal = Calendar.getInstance();
Date time=sdf.parse(d);
cal.setTime(time);
//判断要计算的日期是否是周日,如果是则返回
int dayWeek = cal.get(Calendar.DAY\_OF\_WEEK);//获得当前日期是一个星期的第几天
if(1 == dayWeek) \{
return d;
\}
cal.add(Calendar.DATE, 8 - dayWeek);
return sdf.format(cal.getTime());
\}
// 获得周一的日期
public static String getMonday(String d) throws ParseException \{
SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd"); //设置时间格式
Calendar cal = Calendar.getInstance();
Date time=sdf.parse(d);
cal.setTime(time);
//判断要计算的日期是否是周日,如果是则返回
int dayWeek = cal.get(Calendar.DAY\_OF\_WEEK);//获得当前日期是一个星期的第几天
if(1 == dayWeek) \{
dayWeek = 8;
\}
cal.add(Calendar.DATE, 2 - dayWeek);
return sdf.format(cal.getTime());
\}
}
还没有评论,来说两句吧...