Java进阶学习笔记31——日期时间

Date:

代表的是日期和时间。

分配Date对象并初始化它以表示自标准基准时间(称为纪元)以来的指定毫秒数,即1970年1月1日00:00:00。

有参构造器。

package cn.ensource.d3_time;import java.util.Date;public class Test1Date {public static void main(String[] args) {// 掌握Date日期类的使用// 创建一个Date类对象,代表系统当前时间信息的Date d = new Date();System.out.println(d);// 拿到时间毫秒值long time = d.getTime();System.out.println(time);// 把时间毫秒值转换成日期对象,2s之后的时间是多少time += 2 * 1000;Date d2 = new Date(time);System.out.println(d2);// 直接把日期对象的时间通过setTime方法进行修改Date d3 = new Date();d3.setTime(time);System.out.println(d3);}
}

simpleDateFormat:

为什么要学习简单日期格式化?

在系统中,把时间格式格式化成用户喜欢看的形式。就要用到简单时间格式化。

代表简单日期格式化,可以用来把日期对象、时间毫秒值格式化成我们想要的形式。

SimpleDateFormat: 格式化和解析日期的具体类。

pattern是声明时间格式的。

在父类DateFormat中找到format(Date date),将日期格式化成日期/时间字符串。

再在Format父类中找到format(格式化一个对象来生成一个字符串。)

package cn.ensource.d3_time;import java.text.SimpleDateFormat;
import java.util.Date;public class Test2SimpleDateFormat {public static void main(String[] args) {// 目标:掌握SimpleDateFormat的使用// 1. 准备一些时间Date d = new Date();System.out.println(d);long time = d.getTime();System.out.println(time);// 格式化日期对象,和时间毫秒值SimpleDateFormat sdf = new SimpleDateFormat("yyyy年MM月dd日 HH:mm:ss");String rs1 = sdf.format(d);System.out.println(rs1);String rs2 = sdf.format(time);System.out.println(rs2);}
}

运行结果:

SimpleDateFormat解析字符串时间称为日期对象

字符串时间又转成日期对象,才能解决问题。

运行结果:

会添加一个ParseException。

案例:秒杀活动:

package cn.ensource.d3_time;import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;public class Test3 {public static void main(String[] args) throws ParseException {// 目标:完成秒杀案例// 1. 把开始时间、结束时间、小贾下单时间、小皮下单时间拿到案例程序中String start = "2023年11月11日 00:00:00";String end = "2023年11月11日 00:10:00";String xj = "2023年11月11日 00:01:18";String xp = "2023年11月11日 00:10:57";// 2. 注意:字符串的时间是没有办法进行运算,所以要进行格式化转换成日期对象SimpleDateFormat sdf = new SimpleDateFormat("yyyy年MM月dd日 HH:mm:ss");Date dateStart = sdf.parse(start);Date dateEnd = sdf.parse(end);Date dateXj = sdf.parse(xj);Date dateXp = sdf.parse(xp);// 3. 开始判断小皮和小贾是否秒杀成功了// 把日期对象转成时间毫秒值long dateStartTime = dateStart.getTime();long dateEndTime = dateEnd.getTime();long dateXjTime = dateXj.getTime();long dateXpTime = dateXp.getTime();// 真正的判断if(dateXjTime > dateStartTime && dateXjTime < dateEndTime){System.out.println("小贾,你秒杀成功!");}else {System.out.println("小贾,你秒杀失败");}if(dateXpTime > dateStartTime && dateXpTime < dateEndTime){System.out.println("小皮,你秒杀成功!");}else {System.out.println("小皮,你秒杀失败!");}}
}

 

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

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

相关文章

Java—异常处理

异常的结构图 异常知识点 异常分类&#xff1a; 按照在程序编译阶段是否被检查&#xff0c;异常分为编译时异常&#xff08;Checked Exception&#xff09;和运行时异常&#xff08;Unchecked Exception&#xff09;。编译时异常是指必须进行显式处理的异常&#xff0c;例如IOE…

【Linux】写一个日志类

文章目录 1. 源代码2. 函数功能概览3. 代码详细解释3.1 头文件和宏定义3.2 Log类定义3.3 打印日志的方法3.4 操作符重载和析构函数3.5 可变参数函数的原理 4. 测试用例 1. 源代码 下面代码定义了一个 Log 类&#xff0c;用于记录日志信息。这个类支持将日志信息输出到屏幕、单…

Java扩展机制:SPI与Spring.factories详解

一、SPI SPI全称Service Provider Interface,是Java提供的一套用来被第三方实现或者扩展的API,它可以用来启用框架扩展和替换组件。 整体机制图如下: Java SPI 实际上是“基于接口的编程+策略模式+配置文件”组合实现的动态加载机制。 系统设计的各个抽象,往往有很多不…

戴尔科技:一盆冷水浇醒了AIPC

这年头&#xff0c;只要沾上英伟达的公司&#xff0c;不论美股还是大A,都跟着鸡犬升天几轮过&#xff0c;但昨晚英伟达蒸发1064亿美元&#xff0c; 跟着遭罪的也不少&#xff0c;有没有一夜惊魂梦醒的感觉&#xff1f; 今天我们来说说——戴尔科技。 昨晚戴尔科技大跌5.18%&a…

5G无线标准演进综述及新技术引入

摘 要 随着经济和社会的发展&#xff0c;5G业务越来越丰富多彩&#xff0c;1080P高清视频、裸眼3D、网联汽车、云手机等新业务、新终端对网络的要求也越来越高&#xff1b;另一方面&#xff0c;5G标准持续演进&#xff0c;在MIMO、载波聚合、移动性管理、uRLLC、切片、定位等方…

模仿库实现priority_queue

1 priority_queue 1.1 概念 优先级队列&#xff0c;一种大/小堆(默认为大堆) 1.2 大堆和小堆 一种完全二叉树&#xff0c;大堆根节点一定比子字节大 小堆根节点一定比子字节小 向下调整 从根节点开始比较与子节点的大小不断向下 向上调整 找到最后一个非叶子节点&#xf…

mac多媒体影音库:Emby for Mac 中文版

Emby软件是一款功能强大的媒体服务器软件&#xff0c;旨在为用户提供丰富的多媒体体验。以下是关于Emby软件的详细介绍&#xff1a; 下载地址&#xff1a;https://www.macz.com/mac/7964.html?idOTI2NjQ5Jl8mMjcuMTg2LjE1LjE4Mg%3D%3D 主要功能 媒体管理&#xff1a;Emby允许用…

代码随想录-Day25

216.组合总和III 找出所有相加之和为 n 的 k 个数的组合&#xff0c;且满足下列条件&#xff1a; 只使用数字1到9 每个数字 最多使用一次 返回 所有可能的有效组合的列表 。该列表不能包含相同的组合两次&#xff0c;组合可以以任何顺序返回。 示例 1: 输入: k 3, n 7 输…

Python OCR 图片转文字进阶:读光OCR之行检测模型+行识别模型

Python OCR 图片转文字进阶&#xff1a;读光OCR之行检测模型行识别模型 介绍阿里云文字识别OCR&#xff08;读光OCR&#xff09;前置条件模型1&#xff1a;行检测模型模型1&#xff1a;行识别模型 代码&#xff1a;main.py 介绍 什么是OCR&#xff1f; OCR是“Optical Charac…

德人合科技——@天锐绿盾 | -文档透明加密系统

天锐绿盾文档透明加密系统是一种先进的数据安全解决方案&#xff0c;旨在保护企业和组织的敏感信息&#xff0c;防止未经授权的访问和泄漏。 PC地址&#xff1a; https://isite.baidu.com/site/wjz012xr/2eae091d-1b97-4276-90bc-6757c5dfedee 以下是该系统的一些关键特点和功…

[C++11/14新特性] tuple元组介绍

C11 标准新引入了一种类模板&#xff0c;命名为 tuple&#xff08;中文可直译为元组&#xff09;。tuple 最大的特点是&#xff1a;实例化的对象可以存储任意数量、任意类型的数据。tuple 的应用场景很广泛&#xff0c;例如当需要存储多个不同类型的元素时&#xff0c;可以使用…

3D目标检测入门:探索OpenPCDet框架

前言 在自动驾驶和机器人视觉这两个飞速发展的领域中&#xff0c;3D目标检测技术扮演着核心角色。随着深度学习技术的突破性进展&#xff0c;3D目标检测算法的研究和应用正日益深入。OpenPCDet&#xff0c;这个由香港中文大学OpenMMLab实验室精心打造的开源工具箱&#xff0c;…

【用Python画画】六一儿童节画爱心

本文收录于 《Python编程入门》专栏&#xff0c;从零基础开始&#xff0c;分享一些Python编程基础知识&#xff0c;欢迎关注&#xff0c;谢谢&#xff01; 文章目录 一、前言二、代码示例三、知识点梳理四、总结 一、前言 本文介绍如何使用Python的海龟画图工具turtle&#xf…

堆排序的实现

在上一篇博客中&#xff0c;介绍了堆的实现&#xff0c;现在来介绍一下堆排序。 一.打印有序&#xff1a; 现在先给一个无序的数组&#xff0c;现在我们利用我们实现的堆的功能先完成一下打印排序&#xff1a; 在for循环里是一个建堆的过程&#xff0c;每来一个数据就放入堆中…

linux进程的加载和启动过程分析

我们的源代码通过预处理,编译,汇编,链接后形成可执行文件,那么当我们在终端敲下指令$ ./a.out argv1 argv2 后,操作系统是怎么将我们的可执行文件加载并运行的呢? 首先知道,计算机的操作系统的启动程序是写死在硬件上的,每次计算机上电时,都将自动加载启动程序,之后…

python第五次作业

1.请实现一个装饰器&#xff0c;每次调用函数时&#xff0c;将函数名字以及调用此函数的时间点写入文件中 # 导入datetime模块&#xff0c;用于获取当前时间并格式化输出 import datetime# 定义一个装饰器工厂函数log_funcName_time&#xff0c;它接受一个参数time def log_fu…

红外听力教学考试系统-红外语音听力广播在大学英语四六级听力考试中应用

红外听力教学考试系统-红外语音听力广播在大学英语四六级听力考试中的应用 由北京海特伟业科技有限公司任洪卓发布于2024年6月1日 红外语音听力广播&#xff08;即红外听力教学考试系统&#xff09;在英语四六级听力考试的应用正日益凸显出其重要性和优越性。在当前的高等教育…

xcode删除依赖包package,删除不必要的依赖项

点击项目&#xff0c;然后点击PROJECT项里面的Package DepenDependencies&#xff1a; 选中一个依赖项&#xff0c;然后点击减号&#xff0c;就可以把依赖项删除掉了&#xff0c;左侧项目下面的Package已经没有了这个依赖项 TARGET下面的package也要删除&#xff1a;在这里删除…

大数据分析统计

大数据分析统计 from datetime import datetimeimport pandas as pd import matplotlib.pyplot as pltpm25files [PM2.5_2021.csv, PM2.5_2022.csv, PM2.5_2023.csv] pm10files [PM10_2021.csv, PM10_2022.csv, PM10_2023.csv]def read_csv_file(files):# 每个文件都有表头…

C++之类(class)的三种成员修饰符(public、private、protected)总结

1、背景介绍 在C中&#xff0c;类&#xff08;class&#xff09;中成员的三种访问修饰符&#xff08;access specifiers&#xff09;用于控制类的成员&#xff08;属性和方法&#xff09;的访问权限。这些修饰符决定了类成员在类的外部和内部是否可以被访问。以下是这三种访问…