Java重修笔记 第三十七天 日期类

news2024/12/26 2:11:57
  • 第一代日期类:Date

1. 通过 new 一个 Date 对象来获取当前时间

2. 通过 SimpleDateFormat 对象来格式化时间的输出

public class Date01 {
    public static void main(String[] args) {
        // 获取系统当前时间
        Date date01 = new Date();
        System.out.println("当前日期 = " + date01);

        // 使用格式化日期类创建一个格式化日期对象
        SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy年MM月dd日 hh:mm:ss E");
        // 使用格式化日期对象来输出格式化好的时间
        String time01 = simpleDateFormat.format(date01);
        System.out.println("使用格式化日期类的当前日期 = " + time01);

        // 通过毫秒数定位时间
        Date date02 = new Date(1234455);
        String time02 = simpleDateFormat.format(date02);
        System.out.println("通过毫秒数定位时间日期 = " + time02);

        // 通过时间字符串转成毫秒数
        String time03 = "2024年08月18日 09:32:07 星期日";
        try {
            Date parse = simpleDateFormat.parse(time03);
            System.out.println("通过字符串转成时间对象 = " + parse.getTime());
        } catch (ParseException e) {
            System.out.println(e.getMessage() + "日期转换异常!");
        }
    }
}

运行结果:

  • 第二代日期类:Calendar

1. Calendar是一个抽象类,构造器是私有的,通过静态方法 getInstance() 来获取实例

2. 为特定数据提供了获取方法,例如TEAR、MONTH、DAT_OF_MONTH等

public class Calendar01 {
    public static void main(String[] args) {
        // 获取Calendar对象
        Calendar instance = Calendar.getInstance();
        System.out.println("当前日期 = " + instance);

        // 获取日历对象的某个字段
        System.out.println("年 = " + instance.get(Calendar.YEAR));
        System.out.println("月 = " + (instance.get(Calendar.MONTH) + 1));
        System.out.println("日 = " + instance.get(Calendar.DAY_OF_MONTH));
        System.out.println("时 = " + instance.get(Calendar.HOUR));
        System.out.println("分 = " + instance.get(Calendar.MINUTE));
        System.out.println("秒 = " + instance.get(Calendar.SECOND));
    }
}

运行结果:

  • 第三代日期类:LocalDateTime

1. 前两代日期类有着线程不安全,不能处理润秒,格式化不方便等缺陷,JDK8引入第三代日期类

2. LocalDate类只包含日期,LocalTime类只包含时间,LocalDateTime类包含日期和时间

3. 使用 LocalDateTime.now() 获取LocalDateTime日期类对象

3. 使用 DateTimeFormatter.ofPattern("yyyy年MM月dd日 hh:mm:ss E").format(LocalDateTime.now()) 获取格式化好的日期对象

public class LocalDate01 {
    public static void main(String[] args) {
        // 创建LocalDateTime日期类对象
        LocalDateTime now = LocalDateTime.now();
        System.out.println("LocalDateTime.now() = " + now);
        System.out.println("now.getYear() = " + now.getYear());
        System.out.println("now.getMonth() = " + now.getMonthValue());
        System.out.println("now.getDayOfMonth() = " + now.getDayOfMonth());
        System.out.println("now.getHour() = " + now.getHour());
        System.out.println("now.getMinute() = " + now.getMinute());
        System.out.println("now.getSecond() = " + now.getSecond());

        // 格式化日期类
        DateTimeFormatter dateTimeFormatter = DateTimeFormatter.ofPattern("yyyy年MM月dd日 hh:mm:ss E");
        System.out.println("dateTimeFormatter.format(now) = " + dateTimeFormatter.format(now));
    }
}

运行结果:

  • 时间戳Instant

1. 类似于Date,提供了一系列和Date类的转换方式,用来表示具体的某一时刻

2. 通过静态方法now()来获取Instant时间戳

Instant now = Instant.now();

3. Date ---> Instant 

Date date = Date.from(now);

4. Instant ---> Date

Instant instant = date.toInstant();

  • 时间戳Instant的常用方法

1. public LocalDateTime plusDays(long days)

        返回加了days天数的日期

2. public LocalDateTime plusMinutes(long minutes)

        返回加了minutes分钟的日期

3. public LocalDateTime minusMinutes(long minutes)

        返回减去minutes分钟的日期

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

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

相关文章

周边乡村游小程序的设计

管理员账户功能包括:系统首页,个人中心,游客,景点信息管理,景点美食管理,美食类型管理,景点攻略管理,特产信息管理,特产类型管理,系统管理 微信端账号功能包…

猫头虎分享:如何选择GPT-4、GPT-4 Turbo、GPT-4o 和 GPT-4o mini?

猫头虎分享:如何选择GPT-4、GPT-4 Turbo、GPT-4o 和 GPT-4o mini? 大家好,我是猫头虎 👋,今天我们要讨论的是在各种场景下如何选择合适的智能助手模型。随着人工智能技术的发展,OpenAI推出了多种型号的GPT…

【C++ Primer Plus习题】2.3

问题: 解答: #include <iostream> using namespace std;void print01() {cout << "三只眼瞎的老鼠" << endl; }void print02() {cout << "看他们怎么跑" << endl; }int main() {print01();print01();print02();print02();r…

EmguCV学习笔记 VB.Net 6.3 轮廓外接多边形

版权声明&#xff1a;本文为博主原创文章&#xff0c;转载请在显著位置标明本文出处以及作者网名&#xff0c;未经作者允许不得用于商业目的。 EmguCV是一个基于OpenCV的开源免费的跨平台计算机视觉库,它向C#和VB.NET开发者提供了OpenCV库的大部分功能。 教程VB.net版本请访问…

聚类分析|距离与相似系数|层次聚类|K均值聚类|SPSS及Matlab

聚类分析问题描述 聚类分析问题描述 人类认识世界的方法之一就是将事物按照各种属性或特征分成若干类别。 物以类聚、人以群分。分类方法多种多样&#xff0c;简单直接的如高、矮、胖瘦。使用的信息量小&#xff0c;但对类别界限附近的案例&#xff0c;分类结果不一定合适。 …

Linux 命令管道介绍

今天给伙伴们分享一下Linux 命令管道&#xff0c;希望看了有所收获。 我是公众号「想吃西红柿」「云原生运维实战派」作者&#xff0c;对云原生运维感兴趣&#xff0c;也保持时刻学习&#xff0c;后续会分享工作中用到的运维技术&#xff0c;在运维的路上得到支持和共同进步&am…

软考:软件设计师 — 15.数据结构及算法应用

十五. 数据结构及算法应用 数据结构及算法应用类题目是下午场考试中的第四道题目&#xff0c;分值 15 分&#xff0c;主要以 C 语言填空、算法策略判断和时间复杂度判断为考察形式&#xff0c;建议拿到 6 分以上。 1. 解题技巧 算法策略与时间复杂度部分详细内容可以参考文章…

测试干货 | 如何选择合适的半导体检测方法?看完这篇就明白了!

撰文排版&#xff1a;刘佳 审核指导&#xff1a;肖俊灵 本文较长&#xff0c;建议先收藏后随时查看&#xff01;以后我们将更新更多此类硬核科普&#xff0c;欢迎关注&#xff01; 半导体材料作为半导体产业链中的重要支撑&#xff0c;包括以硅、锗等为代表的元素半导体材料和以…

图与树的基本概念

目录 引言 图与树结构的重要性 图的基本概念 图的表示方式 图的遍历算法 树的基本概念 树的定义与性质 树的遍历 二叉树与多叉树的概念 图与树的高级应用 最短路径算法 最小生成树算法 总结与应用 综合实例分析 引言 在计算机科学的世界中&#xff0c;图和树是两…

商圈停车泊位实时查询与推荐系统 项目编号:17259(案例分享)

摘 要 在当今城市化进程加快的背景下&#xff0c;城市停车问题日益突出&#xff0c;给市民出行带来诸多不便。为解决停车难题&#xff0c;提高停车效率&#xff0c;基于Java开发语言和Spring Boot框架&#xff0c;结合MySQL数据库技术&#xff0c;开发了商圈停车泊位实时查询…

计算机Java项目|基于SpringBoot的网络海鲜市场系统的设计与实现

作者主页&#xff1a;编程指南针 作者简介&#xff1a;Java领域优质创作者、CSDN博客专家 、CSDN内容合伙人、掘金特邀作者、阿里云博客专家、51CTO特邀作者、多年架构师设计经验、多年校企合作经验&#xff0c;被多个学校常年聘为校外企业导师&#xff0c;指导学生毕业设计并参…

牛客小白月赛96

牛客小白月赛96 A 最少胜利题数 链接&#xff1a;https://ac.nowcoder.com/acm/contest/84528/A 来源&#xff1a;牛客网 题目描述 本场小白月赛共 6 题&#xff0c;&#x1d435;&#x1d456;&#x1d45b;&#x1d454;&#x1d44f;&#x1d45c;&#x1d45b;&#x1d4…

【hot100篇-python刷题记录】【找到字符串中所有字母异位词】

R6-滑动窗口篇 印象题 核心&#xff1a; 使用collections方法的Counter计数&#xff0c;统计了某个子串中每个字母出现的次数。 判断子串相等&#xff1a;counter1counter2 &#xff08;注意&#xff1a;此时&#xff0c;counter1或者counter2都不能含有多余的项&#xff0…

JVM系列--初始JVM

根据《黑马程序员JVM虚拟机入门到实战全套视频教程》整理 1 什么是JVM JVM 全称是 Java Virtual Machine&#xff0c;中文译名 Java虚拟机。JVM 本质上是一个运行在计算机上的程序&#xff0c;他的职责是运行Java字节码文件。 Java源代码执行流程如下&#xff1a; 分为三个步…

Mysql 集群技术

一、Mysql 在服务器中的部署方法 在企业中90%的服务器操作系统均为Linux在企业中对于Mysql的安装通常用源码编译的方式来进行官网&#xff1a;http://www.mysql.com 1.1 在Linux下部署mysql cmake \ -DCMAKE_INSTALL_PREFIX/usr/local/mysql \ #指定安装路径 -DMYSQL_DATADI…

【Unity变现】Unity 接入Unity ADS广告

说在前面的话&#xff0c;Unity ADS是Unity官方做的广告变现平台&#xff0c;但广告在我国大陆无法使用&#xff0c;开发时测试的话需要上代理才能看到请求的广告。 如果游戏不准备发布到海外市场&#xff0c;可以不考虑这个平台。 一、注册Unity ADS平台的准备 https://dash…

JavaEE 第17节 网络通信知识扫盲

文章目录 前言一、网络通信的概念二、局域网&广域网 局域网&#xff08;LAN&#xff0c;Local Area Network&#xff09; 广域网 三、IP地址与端口号 1、IP地址 2、端口号 四、网络协议 1、概念&作用 2、协议分层&#xff08;重要&#xff09; 前言 此篇博…

你是如何更精准地指引模型,激发其无尽的创造力?

随着大型语言模型日益凸显其重要性&#xff0c;发掘并充分利用它们的潜力&#xff0c;很大程度上依赖于我们如何巧妙构思和构造指令——即Prompt的精炼艺术。优化Prompt撰写技巧&#xff0c;将能够更好地引导大模型&#xff0c;为各类应用场景生成高质量的文本输出。分享出你的…

CTF杂项题:easy_nbt writeup

题目 题目如图&#xff0c;有一个附件&#xff1a;file.7z 解题思路 CTF的杂项题&#xff0c;对于刚接触的人员来说&#xff0c;很多时候是完全没有思路&#xff0c;解这类题&#xff0c;没有相关知识储备的时候&#xff0c;可以使用文件内容搜索工具搜索flag、ctf、key等关键…

【实现100个unity特效之25】Unity中实现二次元模型,基于光照的内置和URP管线卡通化渲染shader

最终效果 文章目录 最终效果默认效果简单粗暴&#xff0c;使用Unlit/Texture基于光照模型的卡通渲染UnityToonShader——仅支持内置渲染管线基于光照模型的二次元渲染UnityURPToonLitShaderExample——仅支持URP渲染管线 完结 默认效果 不然不做处理&#xff0c;我们的模型默认…