java获取当月最后一天日期

作者:原创时间:2022-03-29
文档

很多朋友都想知道java如何获取当月最后一天日期?下面就一起来了解一下吧~

java取得当月最后一天日期的方法一共有4种

第一种,使用Calendar的roll方法,在限制某个日期字段不改变的形式下,改变其他日期字段的值。

第二种,使用Calendar的getActualMaximum方法,获得指定日期字段的最大值。

第三种,使用Calendar的set和add方法,从下个月的第一天计算得到当前月的最后一天。

第四种,循环使用Calendar的add方法,加到本月的最后一天。

以上四种方法如下示例:

import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;
public class DateTime {undefined
public static void main(String[] args) throws ParseException {undefined
DateTime dt = new DateTime();
Date date = new SimpleDateFormat("yyyy-MM-dd").parse("2008-02-14");
date = dt.lastDayOfMonth(date);
System.out.println (new SimpleDateFormat("yyyy-MM-dd").format(date));
date = new SimpleDateFormat("yyyy-MM-dd").parse("2008-02-14");
date = dt.lastDayOfMonth2(date);
System.out.println (new SimpleDateFormat("yyyy-MM-dd").format(date));
date = new SimpleDateFormat("yyyy-MM-dd").parse("2008-02-14");
date = dt.lastDayOfMonth3(date);
System.out.println (new SimpleDateFormat("yyyy-MM-dd").format(date));
date = new SimpleDateFormat("yyyy-MM-dd").parse("2008-02-14");
date = dt.lastDayOfMonth4(date);
System.out.println (new SimpleDateFormat("yyyy-MM-dd").format(date));
}
public Date lastDayOfMonth(Date date) {undefined
Calendar cal = Calendar.getInstance();
cal.setTime(date);
cal.set(Calendar.DAY_OF_MONTH, 1);
cal.roll(Calendar.DAY_OF_MONTH, -1);
return cal.getTime();
}
public Date lastDayOfMonth2(Date date) {undefined
Calendar cal = Calendar.getInstance();
cal.setTime(date);
int value = cal.getActualMaximum(Calendar.DAY_OF_MONTH);
cal.set(Calendar.DAY_OF_MONTH, value);
return cal.getTime();
}
public Date lastDayOfMonth3(Date date) {undefined
Calendar cal = Calendar.getInstance();
cal.setTime(date);
cal.set(Calendar.DAY_OF_MONTH, 1);
cal.add(Calendar.MONTH, 1);
cal.add(Calendar.DATE, -1);
return cal.getTime();
}
public Date lastDayOfMonth4(Date date) {undefined
Calendar cal = Calendar.getInstance();
cal.setTime(date);
do {undefined
cal.add(Calendar.DATE, 1);
}
while (cal.get(Calendar.DATE) != 1);
cal.add(Calendar.DATE, -1);
return cal.getTime();
}
}

输入日期:

2008-02-14

输出结果:

2008-02-29

2008-02-29

2008-02-29

2008-02-29

以上就是小编今天的分享,希望能够帮到大家。

显示全文
excel如何换行 微博账号怎么注销 java获取文件名后缀 java获取时间差 微信怎么群发消息 japanese java java context java获取本周日期 java controller java获取本地ip java cookie java corba java获取泛型class java core java获取秒级时间戳 java crash java获取网络时间 java crontab java获取视频时长 java csrf excel去重 java获取当前项目的路径 QQ怎么强制解绑手机号 java获取当前路径的几种方法 华为手机怎么添加桌面小组件 java获取当前目录路径 java获取当前目录 java获取当前星期 微博怎么发live照片 qq号查找和精确查找的区别 qq消息不提醒了怎么办 word转pdf怎么转 手机qq怎么退出登录 win10怎么设置定时关机 福尔马林的主要成分 win10怎么关闭自动更新 耗子和老鼠的区别 饺子的来历 java containskey 微信怎么改密码