首页 > 编程语言 >掌握Java“时空”,工作中关于时间类的使用

掌握Java“时空”,工作中关于时间类的使用

时间:2024-11-20 10:17:50浏览次数:1  
标签:00 Java 掌握 对象 SimpleDateFormat date Date 时空 Calendar

掌握Java“时空”,工作中关于时间类的使用

一、Date类

概述

java.util.Date类表示特定的瞬间,精确到毫秒。Date类的构造函数可以把毫秒值转成日期对象

构造方法

  • public Date() //以当前时间创建时间对象

  • public Date(long date) //分配Date对象并初始化此对象,以表示自从标准基准时间(称为“历元(epoch)”,即1970年1月1日00:00:00 GMT)以来的指定毫秒数。

  • 简单来说:使用无参构造,可以自动设置当前系统时间的毫秒时刻;指定long类型的构造参数,可以自定义毫秒时刻。

//无参构造器,创建当前对象
System.out.println(new Date()); //Wed Nov 20 10:01:03 CST 2024
//有参构造器,用于创建一个表示特定时间戳的日期对象。时间戳是以毫秒为单位,从1970年1月1日00:00:00 GMT(格林尼治标准时间)开始计算的时间。
System.out.println(new Date(0L));//Thu Jan 01 08:00:00 CST 1970

二、DateFormat类

概述

DateFormat主要用于日期类Date和字符串之间的转换

  • 格式化:按照指定的格式,从Date对象转换为String对象。(format)
  • 解析:按照指定的格式,从String对象转换为Date对象。(parse)

构造方法

DateFormat是一个抽象类,不能直接实例化,常用的是它的子类 SimpleDateFormat

常用的构造方法

SimpleDateFormat(String pattern) 创建一个 SimpleDateFormat 对象,使用指定的日期和时间格式模式。

参数:
pattern:一个字符串,表示日期和时间的格式模式。

示例

SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
Date date = new Date();
//创建一个 SimpleDateFormat 对象,使用指定的日期和时间格式模式。
DateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
String format = dateFormat.format(date);//2024-11-20 10:21:22
System.out.println(format);

String str = "2024-11-20 10:01:03";
try {
    Date parse = dateFormat.parse(str);
    System.out.println(parse);//Wed Nov 20 10:01:03 CST 2024
} catch (Exception e) {
    //打印异常并记录
    //todo
}

三、Calendar 类

概念

java.util.Calendar是日历类,在Date后出现,替换掉了许多Date的方法。该类将所有可能用到的时间信息封装为静态成员变量,方便获取。日历类就是方便获取各个时间属性的。

构造方法

Calendar为抽象类,由于语言敏感性,Calendar类在创建对象时并非直接创建,而是通过静态方法创建,返回子类对象,如下:

Calendar静态方法

  • public static Calendar getInstance():使用默认时区和语言环境获得一个日历

Calendar类可以很方便的获取到周几,当月有多少天(30或31或28等),同时还可以方便的进行加一天,加一小时之类的计算

Calendar instance = Calendar.getInstance();
instance.setTime(date);//将date对象设置到日历中
Date time1 = instance.getTime();//获取对应的date对象
System.out.println(instance.get(Calendar.YEAR));//获取年份

标签:00,Java,掌握,对象,SimpleDateFormat,date,Date,时空,Calendar
From: https://www.cnblogs.com/wwgroup/p/18556310

相关文章

  • 【Java】对象和JSON字符串之间的转换 全网最清晰!
    在Java中,将对象转换为JSON字符串通常使用一些流行的JSON库,如Jackson或Gson。这两个库都非常强大,支持将Java对象转换为JSON字符串,也支持反向操作。接下来我会介绍一个基于Jackson的工具类,它可以非常方便地实现Java对象和 JSON字符串之间的相互转换。1.引......
  • 科技赋能-JAVA发票查验接口、智能、高效的代名词
    对于企业而言,确保发票的真实性和合法性,不仅关系到企业的运营风险,也直接影响到企业的信用和财务健康。翔云发票查验接口是一款通过API接口连接的发票真伪验证功能。它可以与企业的财务系统无缝对接,实现自动化的发票查验,帮助企业快速、准确地识别发票的真伪,避免因虚假发票而......
  • 复制下来就能跑 : java 免费开源 从 图片 提取文字 - 图片提取文本
    Java中图像识别后提取文字在Java开发中,图像识别中提取文字是一个常见需求,比如用于商品文字识别、文档分析等场景。传统上,这类任务多依赖OCR技术来实现,但其准确性与灵活性往往不尽人意。随着大模型技术的发展,现在可以利用这些先进的AI模型来进行图像识别,不仅提高了识别的准确......
  • springboot基于Java的城市公交调度管理系统的设计与实现
    收藏关注不迷路!!......
  • JavaFX + MySQL:动态显示数据库查询结果的JavaFX应用程序
    文章目录示例概述示例代码导入必要的包定义主类和主方法详细解释导入必要的包定义主类和主方法连接数据库并处理查询结果运行效果示例数据库表结构注意事项示例概述我们将创建一个JavaFX应用程序,该应用程序连接到MySQL数据库,查询某个表中的数据,并将结果显示在一......
  • Java API 进阶指南:从核心API到高级应用的全面提升
    文章目录JavaAPI进阶学习指南1.深入理解核心API1.1集合框架(CollectionsFramework)1.2输入输出流(I/OStreams)1.3并发编程(Concurrency)1.4反射(Reflection)1.5泛型(Generics)2.高级API应用2.1网络编程2.2数据库访问2.3日志记录2.4性能优化3.最佳实践3.1代码规......
  • Java API 学习指南:从入门到精通的全面指导
    文章目录JavaAPI学习指南1.了解JavaAPI的基本概念2.掌握基础的Java知识3.使用官方文档4.实践练习5.深入理解关键API6.关注最新的API更新7.加入社区8.创造性地应用JavaAPI学习指南1.了解JavaAPI的基本概念API是一系列预定义的函数或类,它们提供了......
  • Java面试之多线程&并发篇(6)
    前言本来想着给自己放松一下,刷刷博客,突然被几道面试题难倒!产生死锁的四个必要条件?如何避免死锁?线程池核心线程数怎么设置呢?Java线程池中队列常用类型有哪些?似乎有点模糊了,那就大概看一下面试题吧。好记性不如烂键盘***12万字的java面试题整理******java核心面试知识整理***......
  • Java OOM原因与应对
    一、引言在Java开发的世界里,内存管理是一个至关重要的环节。Java虽然有着自动内存管理机制(通过垃圾回收器,即GC来回收不再使用的对象所占用的内存),但这并不意味着开发者可以高枕无忧,内存溢出(OutOfMemory,简称OOM)问题依然可能悄然降临,给应用程序带来严重的影响,甚至导致系......
  • Java 反射:解锁 Java 世界的 “隐藏技能”
    一、引言在Java开发的广袤天地中,存在着一种犹如魔法般的技术——Java反射。它就像是一把隐藏的钥匙,能够打开Java类与对象内部那些平时看似难以触及的“暗格”,让开发者在运行时去动态地获取类的信息、操作对象的属性以及调用对象的方法等。无论是构建灵活的框架、实现......