百无聊赖之JavaEE从入门到放弃(十七)时间处理相关类

目录

一.Date 时间类

二.DateFormat 类和 SimpleDateFormat 类

三.Calendar 日历类


“时间如流水,一去不复返”,时间是一维的。所以,我们需要一把刻度尺来表达和度

量时间。在计算机世界,我们把 1970 年 1 月 1 日 00:00:00 定为基准时间,每个度量单
位是毫秒(1 秒的千分之一),如图所示。
我们用 long 类型的变量来表示时间,从基准时间前后几亿年都能表示。
这个“时刻数值”是所有时间类的核心值,年月日都是根据这个“数值”计算出来的。
我们工作学习涉及的时间相关类有如下这些:

一.Date 时间类

Date 时间类(java.util.Date)
在标准 Java 类库中包含一个 Date 类。它的对象表示一个特定的瞬间,精确到毫秒。
Date () 分配一个 Date 对象,并初始化此对象为系统当前的日期和时间,可以精 确到毫秒)。
Date (long date) 分配 Date 对象并初始化此对象,以表示自从标准基准时间以 来的毫秒数。
boolean equals ( Object obj) 比较两个日期的相等性。
long getTime () 返回毫秒数。
String toString () 把此 Date 对象转换为以下形式的 String:
dow mon dd hh:mm:ss zzz yyyy 其中:dow 是一周中的某一天 。
【示例】Date 类的使用
long nowNum = System.currentTimeMillis(); //当前时刻对应的毫秒数
Date d = new Date(); //当前时刻的对象
System.out.println(d.getTime()); //返回时间对应的毫秒数
Date d2 = new Date(1000L * 3600 * 24 * 365 * 150); //距离 1970年 150 年
System.out.println(d2);

输出:

1706772365614
Sun Nov 26 08:00:00 CST 2119

二.DateFormat 类和 SimpleDateFormat 类

DateFormat 类的作用
把时间对象转化成指定格式的字符串。反之,把指定格式的字符串转化成时间对象。
DateFormat 是一个抽象类,一般使用它的的子类 SimpleDateFormat 类来实现。
【示例】DateFormat 类和 SimpleDateFormat 类的使用
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;public class Test {public static void main(String[ ] args) throws ParseException {// new 出 SimpleDateFormat 对象SimpleDateFormat s1 = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");SimpleDateFormat s2 = new SimpleDateFormat("yyyy-MM-dd");// 将时间对象转换成字符串String daytime = s1.format(new Date());System.out.println(daytime);System.out.println(s2.format(new Date()));System.out.println(new SimpleDateFormat("hh:mm:ss").format(new Date()));// 将符合指定格式的字符串转成成时间对象.字符串格式需要和指定格式一致。String time = "2049-10-1";Date date = s2.parse(time);System.out.println("date1: " + date);time = "2049-10-1 20:15:30";date = s1.parse(time);System.out.println("date2: " + date);}
}

输出:

2024-02-01 03:31:48
2024-02-01
03:31:48
date1: Fri Oct 01 00:00:00 CST 2049
date2: Fri Oct 01 20:15:30 CST 2049
代码中的格式化字符的具体含义见表:

时间格式字符也可以为我们提供其他的便利。比如:获得当前时间是今年的第几天。

三.Calendar 日历类

Calendar 类是一个抽象类,为我们提供了关于日期计算的功能,比如:年、月、日、时、
分、秒的展示和计算。
GregorianCalendar Calendar 的子类,表示公历。
菜鸟雷区
注意月份的表示,一月是 0,二月是 1,以此类推,12 月是 11。 因为大多数人习惯于使用
单词而不是使用数字来表示月份,这样程序也许更易读,父类 Calendar 使用常量来表示月份:
JANUARY、FEBRUARY 等等。
【示例】GregorianCalendar 类和 Calendar 类的使用

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/661970.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

张维迎《博弈与社会》多重均衡与制度和文化(4)路径依赖的困惑

在前述计算机产品标准化的问题中,有两个纳什均衡:都生产有5.25英寸软盘驱动器的计算机和都生产有3.5英寸软盘驱动器的计算机。假设一开始企业只能生产有5.25英寸软盘驱动器的计算机,生产3.5英寸软盘驱动器计算机的技术随后出现,企…

Next.js如何正确处理跨域问题?

以前一直使用Vue来写前端。去年下半年接手了一个基于React Next.js的项目,于是顺带学习了一下Next.js。由于Next.js的特点,这个项目的前后端是放在一起的。一开始没什么问题,看了半天文档就上手了。 上周我们需要在另一个网页项目中&#x…

C#,桌面游戏编程,数独游戏(Sudoku Game)的算法与源代码

本文包括以下内容: (1)数独游戏的核心算法; (2)数独游戏核心算法的源代码; (3)数独游戏的部分题目样本; (4)适老版《数独》的设计原则…

C#,哥伦布数(Golomb Number)的算法与源代码

1 哥伦布数(Golomb Number) 哥伦布数(Golomb Number)是一个自然数的非减量序列,使得n在序列中正好出现G(n)次。前几个15的G(n)值为:1 2 2 3 3 4 4 4 5 5 5 6…

计算机图形学 实验

题目要求 1.1 实验一:图元的生成:直线、圆椭区域填充 你需要完成基本的图元生成算法,包括直线和椭圆。 在区域填充中,要求你对一个封闭图形进行填充。你需要绘制一个封 闭图形(例如多边形),并选…

Hadoop3.x基础(3)- MapReduce

来源: B站尚硅谷 目录 MapReduce概述MapReduce定义MapReduce优缺点优点缺点 MapReduce核心思想MapReduce进程常用数据序列化类型MapReduce编程规范WordCount案例实操本地测试提交到集群测试 Hadoop序列化序列化概述自定义bean对象实现序列化接口(Writable&#xff…

新手不会Git也能玩Github吗?

新手不会Git也能玩Github吗? 前言使用Github的准备步骤使用一种访问外网资源的方法(这一步才是新手最容易)注册账号 创建一个自己的仓库创建完仓库后的界面 搜索你想要的代码类型以搜索坦克大战为例以下载烟花代码为例 总结 前言 说到Github&…

人工智能福利站,初识人工智能,机器学习,第四课

🏆作者简介,普修罗双战士,一直追求不断学习和成长,在技术的道路上持续探索和实践。 🏆多年互联网行业从业经验,历任核心研发工程师,项目技术负责人。 🎉欢迎 👍点赞✍评论…

我已经入驻多多

我已经入驻多多面包多平台 啦! 作为一位专注于帮助人们部署Python环境、探索人工智能和JavaEE技术,并创作计算机课程设计相关作品的创作者。我的作品类型涵盖了各种技术领域,旨在为学习者提供实用的资源和指导。 在CSDN拥有1100个粉丝的基础上&#x…

arcgis javascript api4.x加载非公开或者私有的arcgis地图服务

需求: 加载arcgis没有公开或者私有的地图服务,同时还想实现加载时不弹出登录窗口 提示:​ 下述是针对独立的arcgis server,没有portal的应用场景; 如果有portal可以参考链接:https://mp.weixin.qq.com/s/W…

MapStruct 使用

MapStruct最详细的使用教程,别在用BeanUtils.copyProperties () mapstruct使用和详解 项目背景 之前查看网上别人写的文章,很多都提到了BeanUtils(org.springframework.beans) 利用反射性能比较差。大家都推荐使用 MapStruct。因为这个组件使用 Java 原…

zookeeper 应该这样学

ZooKeeper 是一个分布式的,开放源码的分布式应用程序协调服务,是 Google 的 Chubby 一个开源的实现,是 Hadoop 和 Hbase 的重要组件。它是一个为分布式应用提供一致性服务的软件,提供的功能包括:配置维护、域名服务、分…

C# 使用 MailKit 接收邮件(附demo)

C# 使用 MailKit 接收邮件(附demo) 介绍安装包(依赖)案例简单代码 获取附件核心代码完整代码 介绍一下POP3 介绍 MailKit 是一个开源的 C# 邮件处理库,用于在应用程序中发送和接收电子邮件。它提供了一个强大且易于使…

Redis核心技术与实战【学习笔记】 - 6.Redis 的统计操作处理

1.前言 在 Web 业务场景中,我们经常保存这样一种信息:一个 key 对应了一个数据集合。比如: 手机 APP 中的每天用户登录信息:一天对应一系列用户 ID。电商网站上商品的用户评论列表:一个商品对应了一些列的评论。用户…

【云原生之kubernetes系列】--污点与容忍

污点与容忍 污点(taints):用于node节点排斥Pod调度,与亲和效果相反,即taint的node排斥Pod的创建容忍(toleration):用于Pod容忍Node节点的污点信息,即node节点有污点,也将新的pod创建…

Ubuntu远程连接登录信息解读(ubuntu登录信息、远程登录信息)

文章目录 1. Welcome to Ubuntu 20.04.4 LTS (GNU/Linux 5.4.0-100-generic aarch64)2. 三个链接是官方提供的文档、管理工具和技术支持3. System information as of Thu 01 Feb 2024 03:30:45 PM HKT4. System load: 1.16:系统负载指数5. Processes: 1096系统正在运…

【AI视野·今日Robot 机器人论文速览 第七十七期】Mon, 15 Jan 2024

AI视野今日CS.Robotics 机器人学论文速览 Mon, 15 Jan 2024 Totally 14 papers 👉上期速览✈更多精彩请移步主页 Daily Robotics Papers Learning Joint Space Reference Manifold for Reliable Physical Assistance Authors Amirreza Razmjoo, Tilen Brecelj, Kri…

【智能家居入门4】(FreeRTOS、MQTT服务器、MQTT协议、微信小程序)

前面已经发了智能家居入门的1、2、3了,在实际开发中一般都会使用到实时操作系统,这里就以FreeRTOS为例子,使用标准库。记录由裸机转到实时操作系统所遇到的问题以及总体流程。相较于裸机,系统实时性强了很多,小程序下发…

Cache Lab:Part B(52.6/53分)【矩阵转置的分块算法】

目录 任务描述 32 32 baseline try1:给对角线上的块再次细分块 try2:对角块依次错位 成功:对角块两两交换 成功:其他方法 64 64 baseline 对角线优化普通块转置顺序调整(7.6/8分) 61 67 成…

Vue3+vite搭建基础架构(3)--- 使用dayjs

Vue3vite搭建基础架构(3)--- 使用dayjs 说明官方文档vite.config.js别名配置安装dayjs安装命令 使用dayjs将dayjs封装为自己的日期工具类使用dataUtil.js日期工具类示例 说明 这里记录下自己在Vue3vite的项目使用dayjs的过程,不使用ts语法&a…