Java面向对象-常用类(日期时间类)

常用类-日期时间类

Date(java.util.Date) -- 日期类

SimpleDateFormat -- 格式化日期类

Calendar -- 日历类

1 Date类

java.util.Date类表示特定的瞬间,精确到毫秒。

java 复制代码
package com.qf.datetime;

import java.util.Date;

public class Test01 {

	public static void main(String[] args) {
		
		Date date = new Date();
		//星期 月份 日期 时:分:秒 时区 年份
		//Sat May 11 10:42:59 CST 2024
		System.out.println(date);
	
	}
}

2 SimpleDateFormat类

将显示的日期信息格式化

java 复制代码
package com.qf.datetime;

import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;

public class Test02 {

	public static void main(String[] args) throws ParseException {
		
		SimpleDateFormat sdf = new SimpleDateFormat("yyyy年MM月dd日 HH:mm:ss");
	
		//将Date对象转换为符合格式的日期时间字符串
		String datetime = sdf.format(new Date());
		System.out.println(datetime);//2024年05月11日 10:49:21
	
		//将符合格式的日期时间字符串转换为Date对象
		Date date = sdf.parse("2024年05月11日 10:65:21");
		System.out.println(date);
	
	}
}

3 Calendar类

Calendar类(日历)是一个抽象基类,主要用于完成日期字段之间相互操作的功能。即可以设置和获取日期数据的特定部分。

扩展:

Calendar底层使用简单工厂模式

小结:

Date 和 SimpleDateFormat联合使用,获取出想要的日期时间格式

Calendar获取单个日历数据

java 复制代码
package com.qf.datetime;

import java.util.Calendar;

public class Test03 {

	public static void main(String[] args) {
		
		//获取日历对象
		Calendar c = Calendar.getInstance();
		
		int year = c.get(Calendar.YEAR);
		int month = c.get(Calendar.MONTH)+1;//0~11月
		int day = c.get(Calendar.DAY_OF_MONTH);
		int hour = c.get(Calendar.HOUR);
		int minute = c.get(Calendar.MINUTE);
		int second = c.get(Calendar.SECOND);
		
		System.out.println(year);
		System.out.println(month);
		System.out.println(day);
		System.out.println(hour);
		System.out.println(minute);
		System.out.println(second);
	
	}
}
相关推荐
小陈工39 分钟前
2026年3月24日技术资讯洞察:边缘AI商业化,Java26正式发布与开源大模型成本革命
java·运维·开发语言·人工智能·python·容器·开源
haibindev1 小时前
把近5万个源文件喂给AI之前,我先做了一件事
java·前端·c++·ai编程·代码审计·架构分析
yymboss1 小时前
【JavaEE】Spring Boot 项目创建
java·spring boot·java-ee
sxhcwgcy1 小时前
快速在本地运行SpringBoot项目的流程介绍
java·spring boot·后端
xiaomo22491 小时前
javaee-多线程进阶
java·开发语言
我真会写代码1 小时前
线程池高频面试题(整理版)
java·线程池
左左右右左右摇晃2 小时前
Java并发——线程间的通信
java·开发语言
用户298698530142 小时前
Java: 从 Word 文档中提取文本和图像
java·后端
皙然2 小时前
吃透进程与线程:从概念到实战,破解并发编程核心难题
java·开发语言
冬夜戏雪2 小时前
HashMAP底层原理和扰动hash的例子
java·开发语言