import javatextSimpleDateFormat;
import javautilCalendar;
import javautilDate;
public class Main {
private static SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
public static void main(String args[]) {
Date d = new Date();
// 月初
Systemoutprintln("月初" + sdfformat(getMonthStart(d)));
// 月末
Systemoutprintln("月末" + sdfformat(getMonthEnd(d)));
Date date = getMonthStart(d);
Date monthEnd = getMonthEnd(d);
while (!dateafter(monthEnd)) {
Systemoutprintln(sdfformat(date));
date = getNext(date);
}
}
private static Date getMonthStart(Date date) {
Calendar calendar = CalendargetInstance();
calendarsetTime(date);
int index = calendarget(CalendarDAY_OF_MONTH);
calendaradd(CalendarDATE, (1 - index));
return calendargetTime();
}
private static Date getMonthEnd(Date date) {
Calendar calendar = CalendargetInstance();
calendarsetTime(date);
calendaradd(CalendarMONTH, 1);
int index = calendarget(CalendarDAY_OF_MONTH);
calendaradd(CalendarDATE, (-index));
return calendargetTime();
}
private static Date getNext(Date date) {
Calendar calendar = CalendargetInstance();
calendarsetTime(date);
calendaradd(CalendarDATE, 1);
return calendargetTime();
}
}
这是一个月的 你改改就能写出上个月的了吧
取得时间类
1、Date ,Systemoutprintln(new date());
2、calendar 此类是抽象类,要想实例化,需要实例化子类GregorianCalendar
看看jdk的API中给了相应的方法:注意月份需要加1;
有时候希望对格式进行转换。
SimpleDateFormat类 此类在javatext包下
1、准备原格式,2、准备新格式 3、转化
String str = "2011-09-11 16:35:06";
SimpleDateFormat sd = new SimpleDateFormate("yyyy-MM-dd HH:mm:ss");
SimpleDateFormat sd2 = new SimpleDateFormate("yyyy
年MM月dd日 HH时mm分ss秒")
//然后进行转化
Date d = sdparse(str);
将时间数插入sd2上
String newStr = sd2format(d);
Systemoutprintln(newStr);
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()));
}
}
以上就是关于java 根据日期获取当月所有日期,和 上个月所有日期全部的内容,包括:java 根据日期获取当月所有日期,和 上个月所有日期、请问高手,用Calendar包实现,在java中如何获取指定年月日的星期、Java中获取本周内所有日期等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)