阶段二-Day10-日期类
日期类结构:
1.java.util.Date是日期类
2.DateFormat是日期格式类、SimpleDateFormat是日期格式类的子类
Timezone代表时区
3.Calendar是日历类,GregorianCalendar是日历的子类
一. 常用类-Date
1.1 Date构造方法
Date(long date) 使用给定的毫秒时间价值构建 Date对象
Date() 返回系统的当前时间
日期是有时间的起点的,以地理位置格林尼治时间1970-01-01 00:00:00 为标准,视为时间的起点;Date(long date) 指的是距离标准时间过了多少毫秒;
public class Test01 {public static void main(String[] args) {Date date = new Date();//创建对象,返回当前系统的时间System.out.println(date);//创建距离格林尼治时间标准时间过了1000毫秒的日期Date date2 = new Date(1000L);System.out.println(date2);}
}
1.2 Date类常用方法
public class Test01 {public static void main(String[] args) {//1) 创建Date对象返回当前时间Date date = new Date();System.out.println(date);//2) 获得Date时间距离1970-1-1 00:00:00 经过的毫秒数long time = date.getTime();System.out.println(time);//3) 调用System.currentTimeMillis()返回当前时间对应的毫秒数long l = System.currentTimeMillis();System.out.println(l);//4) 根据毫秒数创建日期对象Date date1 = new Date(l);System.out.println(date1);}
}
1.3 常用的日期相关类-java.util.SimpleDateFormat
format方法
public class Test {public static void main(String[] args) {Date date = new Date();//定义字符串标准SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");//把日期类变成字符串String s = sdf.format(date);System.out.println(s);}
}
parse方法
public class Test {public static void main(String[] args) throws ParseException {String text = "2023年8月21日 20:52:58";SimpleDateFormat sdf = new SimpleDateFormat("yyyy年M月dd日 HH:mm:ss");Date date = sdf.parse(text);System.out.println(date);}
}
1.4 常用的日期相关类-java.util.Calender
创建Calender日历对象
public class Test {public static void main(String[] args) {//获取实例对象:静态方法,推荐//1.创建对象//Calendar是抽象类,所以不能直接创建对象//使用getInstance()方法创建对象Calendar calendar = Calendar.getInstance();//2.set方法设置日历信息//设置年calendar.set(Calendar.YEAR,2019);//日历用0-11 表示 1-12月calendar.set(Calendar.MONTH,1);//设置日 一月中的天数calendar.set(Calendar.DAY_OF_MONTH,8);//设置一天中的小时数calendar.set(Calendar.HOUR_OF_DAY,15);//设置一小时的分钟数calendar.set(Calendar.MINUTE,20);//设置一分钟的秒数calendar.set(Calendar.SECOND,58);calendar.set(2018,1,2);calendar.set(2017,1,2,22,20,20);//3.get方法获取日历信息System.out.println(calendar.get(Calendar.YEAR));//日历用0-11 表示 1-12月System.out.println(calendar.get(Calendar.MONTH));System.out.println(calendar.get(Calendar.DAY_OF_MONTH));System.out.println(calendar.get(Calendar.HOUR_OF_DAY));System.out.println(calendar.get(Calendar.MINUTE));System.out.println(calendar.get(Calendar.SECOND));//4.将日历转为日期Date date = calendar.getTime();System.out.println(new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(date));}
}
二. 新日期类
旧日期类计算复杂存在线程安全问题
2.1 日期初始化操作
通过now方法 获得
public class Test {public static void main(String[] args) {//获得Instant对象,获取格林尼治的当前时间Instant instant = Instant.now();System.out.println(instant);//获得LocalDate,获得本地的当前年月日LocalDate localDate = LocalDate.now();System.out.println(localDate);//获得LocalTime,获得本地的当前时分秒LocalTime localTime = LocalTime.now();System.out.println(localTime);//获得LocalDateTime实例,获得本地的当前年、月、日、时、分、秒LocalDateTime localDateTime = LocalDateTime.now();System.out.println(localDateTime);//使用now方法创建ZonedDateTime实例,获得本地时区的年、月、日、时、分、秒ZonedDateTime zonedDateTime = ZonedDateTime.now();//我国时间以东8区为准,也就是所说的北京时间。按东8区计算System.out.println(zonedDateTime);}
}
public class Test2 {public static void main(String[] args) {Year year = Year.now();System.out.println(year);YearMonth month = YearMonth.now();System.out.println(month);MonthDay day = MonthDay.now();System.out.println(day);}
}
通过of方法 获得
public class Test {public static void main(String[] args) {//根据参数创建本地日期对象LocalDate date = LocalDate.of(2023, 12, 1);System.out.println(date);//根据参数创建本地时间对象LocalTime localTime = LocalTime.of(9,12,12,311);System.out.println(localTime);//根据参数创建本地日期加时间对象LocalDateTime localDateTime = LocalDateTime.of(2023,12,12,12,12,12);System.out.println(localDateTime);//根据日期和时间创建本地日期时间对象LocalDateTime localDateTime1 = LocalDateTime.of(date,localTime);System.out.println(localDateTime1);}
}
未完待续
相关文章:

阶段二-Day10-日期类
日期类结构: 1.java.util.Date是日期类 2.DateFormat是日期格式类、SimpleDateFormat是日期格式类的子类 Timezone代表时区 3.Calendar是日历类,GregorianCalendar是日历的子类 一. 常用类-Date 1.1 Date构造方法 Date(long date) 使用给定的毫秒时间价值构建…...

多任务并行处理相关面试题
我自己面试时被问过两次多任务并行相关的问题: 假设现在有10个任务,要求同时处理,并且必须所有任务全部完成才返回结果 这个面试题的难点是: 既然要同时处理,那么肯定要用多线程。怎么设计多线程同时处理任务呢&…...

Shell脚本学习笔记
1. 写在前面 工作中,需要用到写一些shell脚本去完成一些简单的重复性工作, 于是就想系统的学习下shell脚本的相关知识, 本篇文章是学习shell脚本整理的学习笔记,内容参考主要来自C语言中文网, 学习过程中,…...

ROS-安装xacro
安装 运行下列命令进行安装,xxxxxx处更改为自己的版本 sudo apt-get install ros-xxxxxx-xacro运行 输入下列命令 roscd xacro如果没有报错,并且进入了xacro软件包的目录,则表示安装成功。 参考: [1]https://wenku.csdn.net/ans…...

为什么说 $mash 是 Solana 上最正统的铭文通证?
早在 2023 年的 11 月,包括 Solana、Avalanche、Polygon、Arbitrum、zkSync 等生态正在承接比特币铭文生态外溢的价值。当然,因铭文赛道过于火爆,当 Avalanche、BNB Chain 以及 Polygon 等链上 Gas 飙升至极值,Arbitrum、zkSync 等…...

安装elasticsearch、kibana、IK分词器、扩展IK词典
安装elasticsearch、kibana、IK分词器、扩展IK词典 后面还会安装kibana,这个会提供可视化界面方面学习。 需要注意的是elasticsearch和kibana版本一定要一样!!! 否则就像这样 elasticsearch 1、创建网络 因为我们还需要部署k…...

Spring中常见的BeanFactory后处理器
常见的BeanFacatory后处理器 先给出没有添加任何BeanFactory后处理器的测试代码 public class TestBeanFactoryPostProcessor {public static void main(String[] args) {GenericApplicationContext context new GenericApplicationContext();context.registerBean("co…...
FPGA LCD1602驱动代码 (已验证)
一.需求解读 1.需求 在液晶屏第一行显示“HELLO FPGA 1234!” 2. 知识背景 1602 液晶也叫 1602 字符型液晶,它是一种专门用来显示字母、数字、符号等的点阵 型液晶模块。它由若干个 5X7 或者 5X11 等点阵字符位组成,每个点阵字符位都可以显示一 个字符,每位之间有一个点距的…...

c++编程要养成的好习惯
1、缩进 你说有缩进看的清楚还是没缩进看的清楚 2、i和i i运行起来和i更快 3、 n%20和n&1 不要再用n%20来判断n是不是偶数了,又慢又土,用n&10,如果n&10就说明n是偶数 同理,n&11说明n是奇数 4、*2和<<…...
后台管理项目的多数据源方案
引言 在互联网开发公司中,往往伴随着业务的快速迭代,程序员可能没有过多的时间去思考技术扩展的相关问题,长久下来导致技术过于单一。为此最近在学习互联网思维,从相对简单的功能开始做总结,比如非常常见的基础数据的…...

视频美颜SDK趋势畅想:未来发展方向与应用场景
当下,视频美颜SDK正不断演进,本文将深入探讨视频美颜SDK的发展趋势,探讨未来可能的方向和广泛的应用场景。 1.深度学习与视频美颜的融合 未来,我们可以期待看到更多基于深度学习算法的视频美颜SDK,为用户提供更高质量…...
C++ const 限定符的全面介绍
C const 限定符的全面介绍 1. const 修饰基本数据类型 定义 const 修饰的基本数据类型变量,值不可改变。 语法 const type variable value;特点 不可变性,增加代码可读性。 作用 定义不可修改的常量。 使用场景 全局常量、配置项。 注意事项…...

Vue 中的 ref 与 reactive:让你的应用更具响应性(上)
🤍 前端开发工程师(主业)、技术博主(副业)、已过CET6 🍨 阿珊和她的猫_CSDN个人主页 🕠 牛客高级专题作者、在牛客打造高质量专栏《前端面试必备》 🍚 蓝桥云课签约作者、已在蓝桥云…...

华为云CCE-集群内访问-根据ip访问同个pod
华为云CCE-集群内访问-根据ip访问同个pod 问题描述:架构如下:解决方法: 问题描述: 使用service集群内访问时,由于启用了两个pod,导致请求轮询在两个pod之间,无法返回正确的结果。 架构如下&am…...

Kasada p.js (x-kpsdk-cd、x-kpsdk-ct、integrity)
提供x-kpsdk-cd的API服务 详细请私信~ 可试用~ V:zhzhsgg 一、简述 integrity是通过身份验证Kasada检测机器人流量后获得的一个检测结果(数据完整性) x-kpsdk-cd 是经过编码计算等等获得。当你得到正确的解决验证码值之后,解码会看到如下图…...
Thinkphp 5框架学习
TP框架主要是通过URL实现操作 http://servername/index.php/模块/控制器/操作/参数/值.. index.php 为入口文件,在 public 目录内的 index.php 文件; 模块在 application 目录下默认有一个 index 目录,这就是一个模块; 而在 index 目录下有一个 contro…...

麒麟云增加计算节点
一、安装基座系统并配置好各项设置 追加的计算节点服务器,安装好系统,把主机名、网络网线(网线要和其他网线插的位置一样)、hosts这些配置好,在所有节点的/etc/hosts里面添加信息 在控制节点添加/kylincloud/multinod…...

使用Redis进行搜索
文章目录 构建反向索引 构建反向索引 在Begin-End区域编写 tokenize(content) 函数,实现文本标记化的功能,具体参数与要求如下: 方法参数 content 为待标记化的文本; 文本标记的实现:使用正则表达式提取全小写化后的…...
Oracle修改用户密码
文章目录 Oracle修改用户密码Oracle用户锁定常见的两种状态Oracle用户锁定和解锁 Oracle修改用户密码 使用sys或system使用sysdba权限登录,然后执行以下命令修改密码: alter user 用户名 identified by 密码;密码过期导致的锁定,也通过修改…...
LeetCode解法汇总1276. 不浪费原料的汉堡制作方案
目录链接: 力扣编程题-解法汇总_分享记录-CSDN博客 GitHub同步刷题项目: https://github.com/September26/java-algorithms 原题链接:力扣(LeetCode)官网 - 全球极客挚爱的技术成长平台 描述: 圣诞活动预…...
SkyWalking 10.2.0 SWCK 配置过程
SkyWalking 10.2.0 & SWCK 配置过程 skywalking oap-server & ui 使用Docker安装在K8S集群以外,K8S集群中的微服务使用initContainer按命名空间将skywalking-java-agent注入到业务容器中。 SWCK有整套的解决方案,全安装在K8S群集中。 具体可参…...

如何在看板中体现优先级变化
在看板中有效体现优先级变化的关键措施包括:采用颜色或标签标识优先级、设置任务排序规则、使用独立的优先级列或泳道、结合自动化规则同步优先级变化、建立定期的优先级审查流程。其中,设置任务排序规则尤其重要,因为它让看板视觉上直观地体…...
在web-view 加载的本地及远程HTML中调用uniapp的API及网页和vue页面是如何通讯的?
uni-app 中 Web-view 与 Vue 页面的通讯机制详解 一、Web-view 简介 Web-view 是 uni-app 提供的一个重要组件,用于在原生应用中加载 HTML 页面: 支持加载本地 HTML 文件支持加载远程 HTML 页面实现 Web 与原生的双向通讯可用于嵌入第三方网页或 H5 应…...
CSS设置元素的宽度根据其内容自动调整
width: fit-content 是 CSS 中的一个属性值,用于设置元素的宽度根据其内容自动调整,确保宽度刚好容纳内容而不会超出。 效果对比 默认情况(width: auto): 块级元素(如 <div>)会占满父容器…...
#Uniapp篇:chrome调试unapp适配
chrome调试设备----使用Android模拟机开发调试移动端页面 Chrome://inspect/#devices MuMu模拟器Edge浏览器:Android原生APP嵌入的H5页面元素定位 chrome://inspect/#devices uniapp单位适配 根路径下 postcss.config.js 需要装这些插件 “postcss”: “^8.5.…...

接口自动化测试:HttpRunner基础
相关文档 HttpRunner V3.x中文文档 HttpRunner 用户指南 使用HttpRunner 3.x实现接口自动化测试 HttpRunner介绍 HttpRunner 是一个开源的 API 测试工具,支持 HTTP(S)/HTTP2/WebSocket/RPC 等网络协议,涵盖接口测试、性能测试、数字体验监测等测试类型…...
Python Einops库:深度学习中的张量操作革命
Einops(爱因斯坦操作库)就像给张量操作戴上了一副"语义眼镜"——让你用人类能理解的方式告诉计算机如何操作多维数组。这个基于爱因斯坦求和约定的库,用类似自然语言的表达式替代了晦涩的API调用,彻底改变了深度学习工程…...

Proxmox Mail Gateway安装指南:从零开始配置高效邮件过滤系统
💝💝💝欢迎莅临我的博客,很高兴能够在这里和您见面!希望您在这里可以感受到一份轻松愉快的氛围,不仅可以获得有趣的内容和知识,也可以畅所欲言、分享您的想法和见解。 推荐:「storms…...
SpringAI实战:ChatModel智能对话全解
一、引言:Spring AI 与 Chat Model 的核心价值 🚀 在 Java 生态中集成大模型能力,Spring AI 提供了高效的解决方案 🤖。其中 Chat Model 作为核心交互组件,通过标准化接口简化了与大语言模型(LLM࿰…...

Appium下载安装配置保姆教程(图文详解)
目录 一、Appium软件介绍 1.特点 2.工作原理 3.应用场景 二、环境准备 安装 Node.js 安装 Appium 安装 JDK 安装 Android SDK 安装Python及依赖包 三、安装教程 1.Node.js安装 1.1.下载Node 1.2.安装程序 1.3.配置npm仓储和缓存 1.4. 配置环境 1.5.测试Node.j…...