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的…...

龙虎榜——20250610
上证指数放量收阴线,个股多数下跌,盘中受消息影响大幅波动。 深证指数放量收阴线形成顶分型,指数短线有调整的需求,大概需要一两天。 2025年6月10日龙虎榜行业方向分析 1. 金融科技 代表标的:御银股份、雄帝科技 驱动…...
【根据当天日期输出明天的日期(需对闰年做判定)。】2022-5-15
缘由根据当天日期输出明天的日期(需对闰年做判定)。日期类型结构体如下: struct data{ int year; int month; int day;};-编程语言-CSDN问答 struct mdata{ int year; int month; int day; }mdata; int 天数(int year, int month) {switch (month){case 1: case 3:…...
椭圆曲线密码学(ECC)
一、ECC算法概述 椭圆曲线密码学(Elliptic Curve Cryptography)是基于椭圆曲线数学理论的公钥密码系统,由Neal Koblitz和Victor Miller在1985年独立提出。相比RSA,ECC在相同安全强度下密钥更短(256位ECC ≈ 3072位RSA…...

Qt/C++开发监控GB28181系统/取流协议/同时支持udp/tcp被动/tcp主动
一、前言说明 在2011版本的gb28181协议中,拉取视频流只要求udp方式,从2016开始要求新增支持tcp被动和tcp主动两种方式,udp理论上会丢包的,所以实际使用过程可能会出现画面花屏的情况,而tcp肯定不丢包,起码…...

Unity3D中Gfx.WaitForPresent优化方案
前言 在Unity中,Gfx.WaitForPresent占用CPU过高通常表示主线程在等待GPU完成渲染(即CPU被阻塞),这表明存在GPU瓶颈或垂直同步/帧率设置问题。以下是系统的优化方案: 对惹,这里有一个游戏开发交流小组&…...

Python:操作 Excel 折叠
💖亲爱的技术爱好者们,热烈欢迎来到 Kant2048 的博客!我是 Thomas Kant,很开心能在CSDN上与你们相遇~💖 本博客的精华专栏: 【自动化测试】 【测试经验】 【人工智能】 【Python】 Python 操作 Excel 系列 读取单元格数据按行写入设置行高和列宽自动调整行高和列宽水平…...

MFC内存泄露
1、泄露代码示例 void X::SetApplicationBtn() {CMFCRibbonApplicationButton* pBtn GetApplicationButton();// 获取 Ribbon Bar 指针// 创建自定义按钮CCustomRibbonAppButton* pCustomButton new CCustomRibbonAppButton();pCustomButton->SetImage(IDB_BITMAP_Jdp26)…...
解锁数据库简洁之道:FastAPI与SQLModel实战指南
在构建现代Web应用程序时,与数据库的交互无疑是核心环节。虽然传统的数据库操作方式(如直接编写SQL语句与psycopg2交互)赋予了我们精细的控制权,但在面对日益复杂的业务逻辑和快速迭代的需求时,这种方式的开发效率和可…...

【大模型RAG】Docker 一键部署 Milvus 完整攻略
本文概要 Milvus 2.5 Stand-alone 版可通过 Docker 在几分钟内完成安装;只需暴露 19530(gRPC)与 9091(HTTP/WebUI)两个端口,即可让本地电脑通过 PyMilvus 或浏览器访问远程 Linux 服务器上的 Milvus。下面…...
三体问题详解
从物理学角度,三体问题之所以不稳定,是因为三个天体在万有引力作用下相互作用,形成一个非线性耦合系统。我们可以从牛顿经典力学出发,列出具体的运动方程,并说明为何这个系统本质上是混沌的,无法得到一般解…...