java中Date类,SimpleDateFormat类和Calendar类
Date类
public Date()
创建一个Date对象,代表的是系统当前此刻的日期时间
public Date(long date)
Constructs a
Date
object using the given milliseconds time value.把时间毫秒值转变成Date日期对象
public void setTime(long date)
Sets an existing
Date
object using the given milliseconds time value.设置日期对象的时间为当前时间毫秒值(data)对应的时间
public long getTime()
Returns the number of milliseconds since January 1, 1970, 00:00:00 GMT represented by this
Date
object.获取总的毫秒值
import java.util.Date;public class test {public static void main(String[] args) {//创建一个Date对象,代表系统当前时间信息Date d=new Date();System.out.println(d);//Tue Apr 02 17:41:17 CST 2024//拿到时间毫秒值long time=d.getTime();System.out.println(time);//把时间毫秒值变成时间对象time+=2*1000;Date d2=new Date(time);System.out.println(d2);//Tue Apr 02 17:43:17 CST 2024//直接把日期对象的时间通过setTime方法修改Date d3=new Date();System.out.println(d3);//Tue Apr 02 17:41:17 CST 2024d3.setTime(time);//把日期对象的时间改成此time毫秒的时间System.out.println(d3);//Tue Apr 02 17:43:17 CST 2024}
}
SimpleDateFormat类
可以把简单日期格式化,可以用来把日期对象,时间毫秒值格式化我们想要的形式
public SimpleDateFormat(String pattern)
创建一个简单日期格式化对象,并封装时间的格式
The following pattern letters are defined (all other characters from
'A'
to'Z'
and from'a'
to'z'
are reserved):
例子:
public final String format(Date date)
将日期格式成日期/时间字符串
Public final String format(Object time)
将时间毫秒值格式成日期/时间字符串
import java.text.SimpleDateFormat;
import java.util.Date;public class test {public static void main(String[] args) {Date d=new Date();System.out.println(d);long time= d.getTime();System.out.println(time);SimpleDateFormat s1=new SimpleDateFormat("yyyy年MM月dd日 HH:mm:ss EEE a");String ss=s1.format(d);String ss2=s1.format(time);System.out.println(ss);System.out.println(ss2);/* Wed Apr 03 18:49:12 CST 202417121413523572024年04月03日 18:49:12 周三 下午2024年04月03日 18:49:12 周三 下午*/}
}
public Date parse(String source)
把字符串时间解析成日期对象
import java.text.ParseException;import java.text.SimpleDateFormat;import java.util.Date;public class test2 {public static void main(String[] args) throws ParseException {String dateStr="2024-01-01 12:00:00";//1:创建一个简单格式化对象,指定的时间格式必须与被解析的时间格式一模一样,否则程序出bug;SimpleDateFormat sim=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");Date d = sim.parse(dateStr);System.out.println(d);//Mon Jan 01 12:00:00 CST 2024
一个简单的案例
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;public class test3 {public static void main(String[] args) throws ParseException {String start ="2024-11-11 0:0:0";String end="2024-11-11 0:10:0";String x="2024-11-11 0:01:18";String j="2024-11-11 0:10:18";SimpleDateFormat s=new SimpleDateFormat("yyyy-mm-dd HH:mm:ss");Date starDt=s.parse(start);Date endDt=s.parse(end);Date xDt=s.parse(x);Date jDt=s.parse(j);//把日期对象变成时间毫秒值来比较long startTime=starDt.getTime();long endTime=endDt.getTime();long xTime=xDt.getTime();long jTime=jDt.getTime();if(xTime>=startTime&&xTime<=endTime){System.out.println("x在时间范围内");}else System.out.println("x不在时间范围内");if(jTime>=startTime&&jTime<=endTime){System.out.println("j在时间范围内");}else System.out.println("j不在时间范围内");}
}
Calendar类:抽象类
public static Canledar getInstance()
获取当前日历对象
public int get(int field)
获取日历中的某个信息
public final Date getTime()
获取日期对象
public long getTimeInMills()
获取时间毫秒值
public void set(int field,int value)
修改日历的某个信息
public void add(int field,int amount)
为某个信息增加/减少指定的值
import java.util.Calendar;
import java.util.Date;public class test {public static void main(String[] args) {//1:得到系统此刻时间对应的日历对象Calendar now =Calendar.getInstance();System.out.println(now);//2:获取日历的某个信息int year=now.get(Calendar.YEAR);System.out.println(year);//2024int month=now.get(Calendar.MONTH);System.out.println(month);//3(月份是从0开始计算的。所以当前是4月份)//3:拿到日历记录的时间对象Date d=now.getTime();System.out.println(d);//Wed Apr 03 19:42:30 CST 2024//4:拿到日历记录的时间毫秒值long time =now.getTimeInMillis();System.out.println(time);//1712144598810//5:修改日历中的某个信息now.set(Calendar.MONTH, 6);//将月份改成7月份System.out.println(now);now.set(Calendar.DATE, 125);//改成一年中的第125天//6:为某个信息增加减少now.add(Calendar.MONTH, 2);//月份加2now.add(Calendar.MONTH, -1);//月份减一}
}
相关文章:

java中Date类,SimpleDateFormat类和Calendar类
Date类 public Date() 创建一个Date对象,代表的是系统当前此刻的日期时间 public Date(long date) Constructs a Date object using the given milliseconds time value. 把时间毫秒值转变成Date日期对象 public void setTime(long date) Sets an existing Date ob…...

施耐德 PLC 控制系统 产品 + 软件总体介绍 2020
参考 2020.7 官方说明视频:https://www.bilibili.com/video/BV1Mi4y1G7Qc/ 总体说明 施耐德作为工业控制界巨头(公认的几大巨头:西门子、AB、施耐德),PLC 控制器产品线很庞大,涵盖了高中低的完整产品线&…...

UniApp 应用发布到苹果商店指南
🚀 想要让你的 UniApp 应用在苹果商店亮相吗?别着急,让我来带你一步步完成这个重要的任务吧!在这篇博客中,我将详细介绍如何将 UniApp 应用顺利发布到苹果商店,让你的应用跻身于苹果生态之中。 引言 &…...
KamaCoder 46. 携带研究材料(第六期模拟笔试)
题目描述 小明是一位科学家,他需要参加一场重要的国际科学大会,以展示自己的最新研究成果。他需要带一些研究材料,但是他的行李箱空间有限。这些研究材料包括实验设备、文献资料和实验样本等等,它们各自占据不同的空间࿰…...

MySQL的基本操作(超详细)
👨💻作者简介:👨🏻🎓告别,今天 📔高质量专栏 :☕java趣味之旅 📔(零基础)专栏:MSQL数据库 欢迎🙏点赞&…...

自动驾驶之心规划控制笔记
Search-based Path Planning Methods Path Finding Problem 一般来说指标有距离,耗费时间,能量,或者多目标。 左图是拓扑地图,蓝色的点就是顶点,绿色的线是连接关系。最后得到的是一个从哪里走的一个最优,并非精细解。 右图是栅格地图,这个搜索出来的是在相对分辨率比…...
Linux中部署Java jar 包 shell 脚本
Linux中部署Java jar 包 shell 脚本 #!/bin/bash set -e# 基础 # export JAVA_HOME/work/programs/jdk/jdk1.8.0_181 # export PATHPATH$PATH:$JAVA_HOME/bin # export CLASSPATH$JAVA_HOME/jre/lib/rt.jar:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jarDATE$(date %Y%m%d%…...

auto.js v1.4.4 实现自动打卡
一、使用场景 所在公司的打卡软件可以单独变成一个可以点击的APP,所以只需要实现以下步骤: 自动解锁屏幕返回主屏幕并打卡锁定屏幕需要的环境: 手机端下载并且安装 auto.js v4.1.1 PC端VS安装对应的插件学习资料 B站学习资料 对应 第三期&am…...

【Linux实验室】NFS、DHCP的搭建
NFS、DHCP的搭建 1、nfs服务搭建及测试什么是NFS?环境准备服务端机器安装nfs-utils和rpcbind包启动NFS服务创建/data/NFSdata目录,配置nfs文件启动服务挂载测试在服务端在共享目录下创建文件测试在客户端在共享目录下创建文件 2、dhcp服务搭建及测试什么…...

Samba 总是需要输入网络凭证
输入网络凭证: 用户名是 cat /etc/samba/smb.conf,查看 valid users mxw 为用户名。而不是其他账号名或者用户名,更不是登录计算机时的计算机名; 密码是 需要记住安装samba服务器时,自己设置的password࿱…...

图像处理_积分图
目录 1. 积分图算法介绍 2. 基本原理 2.1 构建积分图 2.2 使用积分图 3. 举个例子 1. 积分图算法介绍 积分图算法是图像处理中的经典算法之一,由Crow在1984年首次提出,它是为了在多尺度透视投影中提高渲染速度。 积分图算法是一种快速计算图像区域和…...

B/S架构SaaS模式 医院云HIS系统源码,自主研发,支持电子病历4级
B/S架构SaaS模式 医院云HIS系统源码,自主研发,支持电子病历4级 系统概述: 一款满足基层医院各类业务需要的云HIS系统。该系统能帮助基层医院完成日常各类业务,提供病患挂号支持、病患问诊、电子病历、开药发药、会员管理、统计查…...
(C)1005 继续(3n+1)猜想
1005 继续(3n1)猜想: 问题描述 卡拉兹(Callatz)猜想已经在1001中给出了描述。在这个题目里,情况稍微有些复杂。 当我们验证卡拉兹猜想的时候,为了避免重复计算,可以记录下递推过程中遇到的每一个数。例如对 n3 进行验证的时候&a…...

编译好的C++应用程序拷贝到其它电脑,提示dll未找到依赖项的解决方法。
编译好的C应用程序拷贝到其它电脑上,运行时出现提示dll未找到依赖项。 由于dll依赖于其它dll,在开发用电脑上的环境不能完全与其它电脑相同。 解决办法是找到调用到的dll依赖的所有dll,拷贝到运行目录下。 在开发电脑上: 1、开…...

wps 开发插件
官方文档参考wps官方文档参考 1.环境安装 安装wps https://www.wps.cn/ 安装Node.js https://nodejs.org/en 安装代码编辑器 Visual Studio Code https://code.visualstudio.com/ 环境检查-进入cmd查看 node -v2.demo 2.1 demo下载 打开vscode,新建终端 安装…...

C语言----数据在内存中的存储
文章目录 前言1.整数在内存中的存储2.大小端字节序和字节序判断2.1 什么是大小端?2.2 练习 3.浮点数在内存中的存储3.1.引子3.2.浮点数的存储3.2.2 浮点数取的过程 前言 下面给大家介绍一下数据在内存中的存储,这个是一个了解c语言内部的知识点…...

【Linux学习】Linux 的虚拟化和容器化技术
˃͈꒵˂͈꒱ write in front ꒰˃͈꒵˂͈꒱ ʕ̯•͡˔•̯᷅ʔ大家好,我是xiaoxie.希望你看完之后,有不足之处请多多谅解,让我们一起共同进步૮₍❀ᴗ͈ . ᴗ͈ აxiaoxieʕ̯•͡˔•̯᷅ʔ—CSDN博客 本文由xiaoxieʕ̯•͡˔•̯᷅ʔ 原创 CSDN 如…...

Delphi 是一种内存安全的语言吗?
上个月,美国政府发布了 "回到基石 "报告: 通往安全和可衡量软件之路 "的报告。该报告是美国网络安全战略的一部分,重点关注多个领域,包括内存安全漏洞和质量指标。 许多在线杂志都对这份报告进行了评论࿰…...

golang语言系列:Scrum、Kanban等敏捷管理策略
云原生学习路线导航页(持续更新中) 本文是 golang语言系列 文章,主要对编程通用技能 Scrum、Kanban等敏捷管理策略 进行学习 1.什么是敏捷开发 敏捷是一个描述软件开发方法的术语,它强调增量交付、团队协作、持续规划和持续学习。…...

QT背景介绍
🐌博主主页:🐌倔强的大蜗牛🐌 📚专栏分类:QT❤️感谢大家点赞👍收藏⭐评论✍️ 目录 一、QT背景 1.1什么是QT 1.2QT的发展历史 1.3什么是框架、库 1.4QT支持的平台 1.5QT的优点 1.6QT的…...
浅谈 React Hooks
React Hooks 是 React 16.8 引入的一组 API,用于在函数组件中使用 state 和其他 React 特性(例如生命周期方法、context 等)。Hooks 通过简洁的函数接口,解决了状态与 UI 的高度解耦,通过函数式编程范式实现更灵活 Rea…...

Vue3 + Element Plus + TypeScript中el-transfer穿梭框组件使用详解及示例
使用详解 Element Plus 的 el-transfer 组件是一个强大的穿梭框组件,常用于在两个集合之间进行数据转移,如权限分配、数据选择等场景。下面我将详细介绍其用法并提供一个完整示例。 核心特性与用法 基本属性 v-model:绑定右侧列表的值&…...

Cloudflare 从 Nginx 到 Pingora:性能、效率与安全的全面升级
在互联网的快速发展中,高性能、高效率和高安全性的网络服务成为了各大互联网基础设施提供商的核心追求。Cloudflare 作为全球领先的互联网安全和基础设施公司,近期做出了一个重大技术决策:弃用长期使用的 Nginx,转而采用其内部开发…...
【Web 进阶篇】优雅的接口设计:统一响应、全局异常处理与参数校验
系列回顾: 在上一篇中,我们成功地为应用集成了数据库,并使用 Spring Data JPA 实现了基本的 CRUD API。我们的应用现在能“记忆”数据了!但是,如果你仔细审视那些 API,会发现它们还很“粗糙”:有…...

Python基于历史模拟方法实现投资组合风险管理的VaR与ES模型项目实战
说明:这是一个机器学习实战项目(附带数据代码文档),如需数据代码文档可以直接到文章最后关注获取。 1.项目背景 在金融市场日益复杂和波动加剧的背景下,风险管理成为金融机构和个人投资者关注的核心议题之一。VaR&…...

【Linux】Linux 系统默认的目录及作用说明
博主介绍:✌全网粉丝23W,CSDN博客专家、Java领域优质创作者,掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java技术领域✌ 技术范围:SpringBoot、SpringCloud、Vue、SSM、HTML、Nodejs、Python、MySQL、PostgreSQL、大数据、物…...
HybridVLA——让单一LLM同时具备扩散和自回归动作预测能力:训练时既扩散也回归,但推理时则扩散
前言 如上一篇文章《dexcap升级版之DexWild》中的前言部分所说,在叠衣服的过程中,我会带着团队对比各种模型、方法、策略,毕竟针对各个场景始终寻找更优的解决方案,是我个人和我司「七月在线」的职责之一 且个人认为,…...

ZYNQ学习记录FPGA(一)ZYNQ简介
一、知识准备 1.一些术语,缩写和概念: 1)ZYNQ全称:ZYNQ7000 All Pgrammable SoC 2)SoC:system on chips(片上系统),对比集成电路的SoB(system on board) 3)ARM:处理器…...

Linux基础开发工具——vim工具
文章目录 vim工具什么是vimvim的多模式和使用vim的基础模式vim的三种基础模式三种模式的初步了解 常用模式的详细讲解插入模式命令模式模式转化光标的移动文本的编辑 底行模式替换模式视图模式总结 使用vim的小技巧vim的配置(了解) vim工具 本文章仍然是继续讲解Linux系统下的…...
Ansible+Zabbix-agent2快速实现对多主机监控
ansible Ansible 是一款开源的自动化工具,用于配置管理(Configuration Management)、应用部署(Application Deployment)、任务自动化(Task Automation)和编排(Orchestration…...