package comtestpackager;
import javatextParseException;
import javatextSimpleDateFormat;
import javautilCalendar;
public class Test {
private static String firstDay;
private static String lastDay;
public static void main(String[] args) {
SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd");
//获取前月的第一天
Calendar cal_1=CalendargetInstance();//获取当前日期
cal_1add(CalendarMONTH, -1);
cal_1set(CalendarDAY_OF_MONTH,1);//设置为1号,当前日期既为本月第一天
firstDay = formatformat(cal_1getTime());
Systemoutprintln("-----1------firstDay:"+firstDay);
//获取前月的最后一天
Calendar cale = CalendargetInstance();
caleset(CalendarDAY_OF_MONTH,0);//设置为1号,当前日期既为本月第一天
lastDay = formatformat(calegetTime());
Systemoutprintln("-----2------lastDay:"+lastDay);
//获取当前月第一天:
Calendar c = CalendargetInstance();
cadd(CalendarMONTH, 0);
cset(CalendarDAY_OF_MONTH,1);//设置为1号,当前日期既为本月第一天
String first = formatformat(cgetTime());
Systemoutprintln("===============first:"+first);
//获取当前月最后一天
Calendar ca = CalendargetInstance();
caset(CalendarDAY_OF_MONTH, cagetActualMaximum(CalendarDAY_OF_MONTH));
String last = formatformat(cagetTime());
Systemoutprintln("===============last:"+last);
}
/
字符串的日期格式的计算
/
public static int daysBetween(String smdate,String bdate) throws ParseException{
SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd");
Calendar cal = CalendargetInstance();
calsetTime(sdfparse(smdate));
long time1 = calgetTimeInMillis();
calsetTime(sdfparse(bdate));
long time2 = calgetTimeInMillis();
long between_days=(time2-time1)/(1000360024);
return IntegerparseInt(StringvalueOf(between_days));
}
}
import javatextSimpleDateFormat;
import javautilCalendar;
import javautilDate;
public class WhatTest {
public static void main(String[] args) {
Calendar cal = CalendargetInstance();
Date now = calgetTime();
caladd(CalendarMONTH, -1);
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd 00:00:00---yyyy-MM-dd 23:59:59");
while (calgetTime()before(now)) {
Systemoutprintln(sdfformat(calgetTime()));
caladd(CalendarDAY_OF_YEAR, 1);
}
}
}
用这个方法吧:入参,可以是指定的日期, 返回 制定日期上个月最后一毫秒的时间点
public static Date getLastMonthEndTime(Date date){Calendar c = CalendargetInstance();
csetTime(date);
cadd(CalendarMONTH, -1);
cset(CalendarDAY_OF_MONTH,cgetActualMaximum(CalendarDAY_OF_MONTH));//设置为最后一天
cset(CalendarHOUR_OF_DAY, 23);
cset(CalendarMINUTE, 59);
cset(CalendarSECOND, 59);
cset(CalendarMILLISECOND, 999);
return cgetTime();
}
Date date = new Date();//当前日期
SimpleDateFormat sdf = new SimpleDateFormat("yyyy/MM/dd");//格式化对象
Calendar calendar = CalendargetInstance();//日历对象
calendarsetTime(date);//设置当前日期
calendaradd(CalendarMONTH, -1);//月份减一
Systemoutprintln(sdfformat(calendargetTime()));//输出格式化的日期
String str = new javatextSimpleDateFormat("yyyy-mm-")format(new javautilDate())+"04";
java中可以这样定义一个公共方法获取系统时间戳:
public static String getFormatDateTime(javautilDate currDate, String format) {
if (currDate == null) {
return "";
}
SimpleDateFormat dtFormatdB = null;
try {
dtFormatdB = new SimpleDateFormat(format);
return dtFormatdBformat(currDate);
} catch (Exception e) {
dtFormatdB = new SimpleDateFormat(TIME_FORMAT);
try {
return dtFormatdBformat(currDate);
} catch (Exception ex) {
}
}
return "";
}
增加一个月后的公共方法:
Calendar cal = CalendargetInstance();
caladd(CalendarMONTH, +1);
Calendar JAVA 这个JAVA日历用处很多,好好看看这个很有好处我们java用的复杂的时间 *** 作,一般都用这个
Java 本身提供了对 "Gregorian Calendar" 规则的实现。我们从 CalendargetInstance() 中所获得的实例就是一个 "GreogrianCalendar" 对象(与您通过 new GregorianCalendar() 获得的结果一致)。
下面的代码可以证明这一点:
import javaio;
import javautil;
public class WhatIsCalendar
{
public static void main(String[] args) {
Calendar calendar = CalendargetInstance();
if (calendar instanceof GregorianCalendar)
Systemoutprintln("It is an instance of GregorianCalendar"t;
}
}
Calendar 在 Java 中是一个抽象类(Abstract Class),GregorianCalendar 是它的一个具体实现。
我们也可以自己的 Calendar 实现类,然后将它作为 Calendar 对象返回(面向对象的特性)。在 IBM alphaWorks 上,IBM 的开发人员实现了多种日历(>
以上就是关于在java下如何取得一个月的第一天和最后一天全部的内容,包括:在java下如何取得一个月的第一天和最后一天、java获取一段时间代码、求java代码获取上个月最后一天最后一秒的时间等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)