java中如何使用Calendar对日期进行操作呢?
下文笔者讲述java中日期操作的简介说明
在java日期操作中,我们经常使用Calendar这个抽象类 ========================================================== java.util.Calendar 类是一个抽象类 Calendar类进行时间和日期的处理例:
获取类实例 Calendar calendar = Calendar.getInstance();//获取当前系统时间 1.设置时间 calendar.set(2024,8,2, 13, 44, 51);//年月日时分秒(月份0代表1月) calendar.set(Calendar.YEAR, 2025);//设置为2025年 calendar.set(Calendar.MONTH, 7);//设置为8月(0代表1月,1代表2月,2代表3月...12代表1月) calendar.set(Calendar.DATE, 18);//设置为18日 calendar.set(Calendar.HOUR_OF_DAY, 20);//设置为20时 calendar.set(Calendar.MINUTE, 13);//设置为13分 calendar.set(Calendar.SECOND, 22);//设置为22秒 2.获取年月日时分秒 calendar.get(Calendar.YEAR);//年 calendar.get(Calendar.MONTH) + 1;//前一个月+1(必须要+1,不然表示获取前一个月份) calendar.get(Calendar.DATE);//日 calendar.get(Calendar.HOUR_OF_DAY);//时 calendar.get(Calendar.MINUTE);//分 calendar.get(Calendar.SECOND);//秒 calendar.get(Calendar.DAY_OF_WEEK);//星期(Locale.ENGLISH情况下,周日是1,剩下自己推算) 3.使用计算的方式获取时间 calendar.add(Calendar.YEAR, 1);//年 calendar.add(Calendar.MONTH, 1);//月 calendar.add(Calendar.DATE, 1);//后一天的时间,-1代表前一天的时间 calendar.add(Calendar.HOUR_OF_DAY, -1);//时 calendar.add(Calendar.MINUTE, 1);//分 calendar.add(Calendar.SECOND, 1);//秒 calendar.add(Calendar.DATE, 7);//周
4.Calendar和Date类转换
Date转Calendar //1.首先获取类实例 Calendar calendar = Calendar.getInstance(); Date date = new Date();//当前时间 calendar.setTime(date);//设置为当期时间 Calendar转Date Calendar calendar = Calendar.getInstance(); Date date = calendar.getTime();
5.格式化时间
Date转String SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); //自定义格式:yyyy年MM月dd日 HH:mm:ss Date time = calendar.getTime(); String dateStr = simpleDateFormat.format(time); String转Date String dateStr = "2025-07-21 18:10:12"; SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); Date parse = simpleDateFormat.parse(dateStr);
打印出前七天的日期,格式为:“2025年08月11日 12:12:42”
import java.text.ParseException; import java.text.SimpleDateFormat; import java.util.Calendar; import java.util.Date; /** * @description: TODO Calendar类基本使用 */ public class CalendarDemo { public static void main(String[] args) throws ParseException { SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy年MM月dd日 HH:mm:ss"); for (int i = 1; i < 8; i++) { Calendar calendar = Calendar.getInstance(); calendar.add(Calendar.DATE,-i); Date time = calendar.getTime(); System.out.println(simpleDateFormat.format(time)); } } }
版权声明
本文仅代表作者观点,不代表本站立场。
本文系作者授权发表,未经许可,不得转载。