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();
}
}
这是一个月的 你改改就能写出上个月的了吧
//0、日期输出格式
SimpleDateFormat f = new SimpleDateFormat("yyyy/MM/dd,HH:mm:ss");
//1、获取当前日期 方式一
Date b = new Date();
Systemoutprintln(fformat(b));
//2、获取当前日期 方式二
Calendar c = CalendargetInstance();
//可以手动设置日期
//cset(2011, CalendarJANUARY, 31);
Systemoutprintln(fformat(cgetTime()));
//3、获取当前日期增加两个月后的日期,
cadd(CalendarMONTH, 2);
Systemoutprintln(fformat(cgetTime()));
import javatextSimpleDateFormat;
import javautilDate;
import javautilCalendar;
public class WorkDay {
public static void main(String[] args) {
SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd E");
for (Date date : getWeekDay()) {
Systemoutprintln(dateFormatformat(date));
}
}
public static Date[] getWeekDay() {
Calendar calendar = CalendargetInstance();
while (calendarget(CalendarDAY_OF_WEEK) != CalendarMONDAY) {
calendaradd(CalendarDAY_OF_WEEK, -1);
}
Date[] dates = new Date[5];
for (int i = 0; i < 5; i++) {
dates[i] = calendargetTime();
calendaradd(CalendarDATE, 1);
}
return dates;
}
}
如果每周指的是从星期一开始,那么这个程序可以达到你的要求。
如果每周指得是从星期日开始,那么请说明,我再修改。
采用日历类Calendar\x0d\\x0d\Calendar calendar = CalendargetInstance();\x0d\//第二个参数的意思表示与当前时间的比较,数字表示天数,1表示下一天 -1表示前一天。\x0d\calendaradd(CalendarDAY_OF_MONTH,1);\x0d\//这样就可以获取到下一天,然后你自己去格式化吧\x0d\calendargetTime();
import javatextSimpleDateFormat;import javautilDate;
public class Timedemo {
public static void main(String[] args)
{
long time=SystemcurrentTimeMillis();
Date date=new Date(time);
String mat="yyyy-MM-dd";
String ma="yyyyMMdd";
SimpleDateFormat format=new SimpleDateFormat(mat);
SimpleDateFormat forma=new SimpleDateFormat(ma);
String nowdate=formatformat(date);
String nwdate=formaformat(date);
int x=IntegerparseInt(nwdate);
Systemoutprintln(nowdate);
Systemoutprintln(nwdate);
Systemoutprintln(x);
}
}
经过测试满足以上条件 希望对你有帮助
Calendar c = CalendargetInstance();
csetTimeInMillis(dategetTime());
cadd(CalendarDATE, amount);
strformatDate(date4, "yyyy-MM-dd");
//dategetTime() 当前日期
//amount 传入的N天数
例如:
SimpleDateFormat formatDate = new SimpleDateFormat("yyyy-MM-dd"); //字符串转换
Calendar c = CalendargetInstance();
//new Date()getTime();这个是获得当前电脑的时间,你也可以换成一个随意的时间
csetTimeInMillis(new Date()getTime());
cadd(CalendarDATE, 5);//天后的日期
Date date= new Date(cgetTimeInMillis()); //将c转换成Date
Systemoutprintln("date="+formatDateformat(date4));
java表示距当前时间100天后的日期的方法是用Calader对象。核心代码如下:1、创建Calendar对象Calendarcalendar=CalendargetInstance();2、调用add方法给当前日期增加100天calendaradd(CalendarDATE,100);3、返回100天后的时间ret
以上就是关于java 根据日期获取当月所有日期,和 上个月所有日期全部的内容,包括:java 根据日期获取当月所有日期,和 上个月所有日期、java如何获取当前日期并计算出2个月后的日期、java 获得本周一到周五的日期等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)