java中如何使用Calendar对日期进行操作呢?

欣喜 Java经验 发布时间:2025-01-27 14:39:58 阅读数:15652 1
下文笔者讲述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));
	   }
  }
}
版权声明

本文仅代表作者观点,不代表本站立场。
本文系作者授权发表,未经许可,不得转载。

本文链接: https://www.Java265.com/JavaJingYan/202501/17379608548265.html

最近发表

热门文章

好文推荐

Java265.com

https://www.java265.com

站长统计|粤ICP备14097017号-3

Powered By Java265.com信息维护小组

使用手机扫描二维码

关注我们看更多资讯

java爱好者