1、使用Calendar类。
Calendar cal = CalendargetInstance();
calset(CalendarYEAR, 2016); // 2016年
calset(CalendarWEEK_OF_YEAR, 10); // 设置为2016年的第10周
calset(CalendarDAY_OF_WEEK, 2); // 1表示周日,2表示周一,7表示周六
Date date = calgetTime();
以上就能得到2016年第10周的周一的Date时间。
注:上面代码是手工敲的,没有放到eclipse中运行,有写错的地方请谅解
用SimpleDateFormat
import javatextParseException;import javatextSimpleDateFormat;
import javautilDate;
public class Test030 {
public static void main(String[] args){
String s = "2013/9";
SimpleDateFormat sdf1 = new SimpleDateFormat("yyyy/MM/dd");
sdf1setLenient(false);
SimpleDateFormat sdf2 = new SimpleDateFormat("EEE");
for(int i = 1; i < 32; i++){
try {
Date date = sdf1parse(s + "/" + i);
Systemoutprintln(sdf1format(date) + " : " + sdf2format(date));
} catch (ParseException e) {
//do nothing
}
}
}
}
输入结果:
2013/09/01 : 星期日
2013/09/02 : 星期一
2013/09/03 : 星期二
2013/09/04 : 星期三
2013/09/05 : 星期四
2013/09/06 : 星期五
2013/09/07 : 星期六
2013/09/08 : 星期日
2013/09/09 : 星期一
2013/09/10 : 星期二
2013/09/11 : 星期三
2013/09/12 : 星期四
2013/09/13 : 星期五
2013/09/14 : 星期六
2013/09/15 : 星期日
2013/09/16 : 星期一
2013/09/17 : 星期二
2013/09/18 : 星期三
2013/09/19 : 星期四
2013/09/20 : 星期五
2013/09/21 : 星期六
2013/09/22 : 星期日
2013/09/23 : 星期一
2013/09/24 : 星期二
2013/09/25 : 星期三
2013/09/26 : 星期四
2013/09/27 : 星期五
2013/09/28 : 星期六
2013/09/29 : 星期日
2013/09/30 : 星期一
import javatextSimpleDateFormat;
import javautilCalendar;
public class DataTest {
public static void main(String[] args) {
printWeekdays();
}
private static final int FIRST_DAY = CalendarMONDAY;
private static void printWeekdays() {
Calendar calendar = CalendargetInstance();
setToFirstDay(calendar);
for (int i = 0; i < 7; i++) {
printDay(calendar);
calendaradd(CalendarDATE, 1);
}
}
private static void setToFirstDay(Calendar calendar) {
while (calendarget(CalendarDAY_OF_WEEK) != FIRST_DAY) {
calendaradd(CalendarDATE, -1);
}
}
private static void printDay(Calendar calendar) {
SimpleDateFormat dateFormat = new SimpleDateFormat("yyyyMMdd EE");
Systemoutprintln(dateFormatformat(calendargetTime()));
}
}
提倡了一下中文写,
static public void main(String 参数[]){
SimpleDateFormat 格式=new SimpleDateFormat("y年M月d日 E H时m分s秒",LocaleCHINA);
Calendar 日历=CalendargetInstance(LocaleCHINA);
//当前时间,貌似多余,其实是为了所有可能的系统一致
日历setTimeInMillis(SystemcurrentTimeMillis());
Systemoutprintln("当前时间:"+格式format(日历getTime()));
日历set(CalendarDAY_OF_WEEK, CalendarMONDAY);
Systemoutprintln("周一时间:"+格式format(日历getTime()));
}
===========
改到后天测了一下
输出
当前时间:2011年8月31日 星期三 12时32分40秒
周一时间:2011年8月29日 星期一 12时32分40秒
Calendar cal = CalendargetInstance();
calclear();
calset(CalendarYEAR, 2014);
calset(CalendarWEEK_OF_YEAR,7);
calset(CalendarDAY_OF_WEEK, CalendarSUNDAY);
Systemoutprintln(calgetTime());
calset(CalendarDAY_OF_WEEK, CalendarSATURDAY);
Systemoutprintln(calgetTime());
使用Calendar类
/Calendar类中的get(CalendarDAY_OF_WEEK)可以获取当前日期是星期几
获取当前日期是星期几<br>
@param dt
@return 当前日期是星期几
/
public static String getWeekOfDate(Date dt) {
String[] weekDays = {"星期日", "星期一", "星期二", "星期三", "星期四", "星期五", "星期六"};
Calendar cal = CalendargetInstance();
calsetTime(dt);
int w = calget(CalendarDAY_OF_WEEK) - 1;
if (w < 0)
w = 0;
return weekDays[w];
}
以上就是关于java 怎么根据第几年的第几周获取那周周一的时期全部的内容,包括:java 怎么根据第几年的第几周获取那周周一的时期、java 获取某一月的所有周的日期段(周一到周日)、Java中获取本周内所有日期等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)