Java日期和时间(一)

传统的日期和时间

Date

  • 代表的是日期和时间
构造器说明
public Date()创建一个Date对象,代表的是系统当前此刻日期时间
public Date(long time)把时间毫秒值转换成Date日期对象
import java.util.Date;public class Test {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

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

 

例子 

        给定的日期和时间是 2001-07-04  12:05:56

import java.text.SimpleDateFormat;
import java.util.Date;public class Test {public static void main(String[] args){// 目标:掌握SimpleDateFormat的使用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 EEE a");String rs = sdf.format(d);String rs2 = sdf.format(time);System.out.println(rs);System.out.println(rs2);}
}

时间格式的常见符号: 

 

 

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

import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;public class Test {public static void main(String[] args) throws ParseException {// 目标:掌握SimpleDateFormat解析字符串时间成为日期对象String dateStr = "2022-12-12 12:12:11";// 创建简单日期格式化对象,指定的时间格式必须与被解析的时间格式一模一样,否则出现会出bugSimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");Date d = sdf.parse(dateStr);System.out.println(d);}
}

案例练习

 

import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;public class Test {public static void main(String[] args) throws ParseException {// 目标:掌握SimpleDateFormat解析字符串时间成为日期对象String start = "2023年11月11日 0:0:0";String end = "2023年11月11日 0:10:0";String xj = "2023年11月11日 0:1:18";String xp = "2023年11月11日 0:10:57";SimpleDateFormat sdf = new SimpleDateFormat("yyyy年MM月dd日 H:m:s");Date startDt = sdf.parse(start);Date endDt = sdf.parse(end);Date xjDt = sdf.parse(xj);Date xpDt = sdf.parse(xp);long startTime = startDt.getTime();long endTime = endDt.getTime();long xjTime = xjDt.getTime();long xpTime = xpDt.getTime();if (xjTime >= startTime && xjTime <= endTime){System.out.println("小贾您秒杀成功");}else {System.out.println("小贾您秒杀失败");}if (xpTime >= startTime && xpTime <= endTime){System.out.println("小皮您秒杀成功");}else {System.out.println("小皮您秒杀失败");}}
}

Calendar

  • 代表的是系统此刻时间对应的日历。
  • 通过它可以单独获取、修改时间中的年、月、日、时、分、秒等。

Calendar日历类的常见方法

import java.util.Calendar;
import java.util.Date;public class Test {public static void main(String[] args){// 目标:掌握Calendar的使用和特点// 得到系统此刻时间对应的日历对象Calendar now = Calendar.getInstance();System.out.println(now);// 获取日历中的某个信息int year = now.get(Calendar.YEAR);System.out.println(year);int days = now.get(Calendar.DAY_OF_YEAR);System.out.println(days);// 拿到日历中记录的日期对象Date d = now.getTime();System.out.println(d);//拿到时间毫秒值long time = now.getTimeInMillis();System.out.println(time);// 修改日历中的某个信息now.set(Calendar.MONTH,9);now.set(Calendar.DAY_OF_YEAR,125);System.out.println(now);// 为某个信息增加或者减少多少now.add(Calendar.DAY_OF_YEAR,100);now.add(Calendar.DAY_OF_YEAR,-10);now.add(Calendar.DAY_OF_MONTH,6);now.add(Calendar.HOUR,12);System.out.println(now);}
}

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

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

相关文章

【开源】基于Vue+SpringBoot的二手车交易系统

目录 一、摘要1.1 项目介绍1.2 项目录屏 二、功能模块2.1 数据中心模块2.2 二手车档案管理模块2.3 车辆预约管理模块2.4 车辆预定管理模块2.5 车辆留言板管理模块2.6 车辆资讯管理模块 三、系统设计3.1 E-R图设计3.2 可行性分析3.2.1 技术可行性分析3.2.2 操作可行性3.2.3 经济…

C/C++ BM4 合并两个排序的链表

文章目录 前言题目1. 解决方案一1.1 思路概述1.2 源码 2. 解决方案二2.1 思路阐述2.2 源码 总结 前言 这道题采用两种方式&#xff0c;一种是直接插入法&#xff0c;还有一种就是递归调用。 题目 输入两个递增的链表&#xff0c;单个链表的长度为n&#xff0c;合并这两个链表…

基于Java图书借阅管理系统设计与实现(源码+部署文档)

博主介绍&#xff1a; ✌至今服务客户已经1000、专注于Java技术领域、项目定制、技术答疑、开发工具、毕业项目实战 ✌ &#x1f345; 文末获取源码联系 &#x1f345; &#x1f447;&#x1f3fb; 精彩专栏 推荐订阅 &#x1f447;&#x1f3fb; 不然下次找不到 Java项目精品实…

python可视化界面自动生成,python如何做可视化界面

大家好&#xff0c;小编来为大家解答以下问题&#xff0c;python gui可视化操作界面制作&#xff0c;python做出的炫酷的可视化&#xff0c;现在让我们一起来看看吧&#xff01; 目录 前言 一.环境配置 插件&#xff1a; 1.python 2.Chinese 3.Open In Default Browser 安装pyt…

JavaScript系列——正则表达式

文章目录 需求场景正则表达式的定义创建正则表达式通过 / 表示式/ 创建通过构造函数创建 编写一个正则表达式的模式使用简单模式使用特殊字符常用特殊字符列表特殊字符组和范围 正则表达式使用代码演示 常用示例验证手机号码合法性 小结 需求场景 在前端开发领域&#xff0c;在…

AJAX:整理3:原生AJAX的相关操作

注意AJAX的步骤 // 1.创建对象 const xhr new XMLHttpRequest()// 2.初始化 设置 请求方法 和 url xhr.open("GET", "http://localhost:9090/server")// 3.发送 xhr.send()// 4.事件绑定 处理服务端返回的结果 // readyState 是xhr对象中的属性&#xff…

链表的一些典型问题

求链表的中间节点/倒数第K个节点 等类似的随机访问&#xff0c;可以考虑用快慢指针 例 求链表的中间节点 可以定义两个指针&#xff0c;一个一次走两步一个一次走一步&#xff0c;当走的快的走到NULL时&#xff0c;走的慢的就是链表的中间节点。&#xff08;此法求出的偶数个…

2023年03月18日_微软office365 copilot相关介绍

文章目录 Copilot In WordCopilot In PowerpointCopilot In ExcelCopilot In OutlookCopilot In TeamsBusiness Chat1 - copilot in word2 - copilot in excel3 - copilot in powerpoint4 - copilot in outlook5 - copilot in teams6 - business chat word 1、起草草稿 2、自动…

1.Linux快速入门

Linux快速入门 Linux操作系统简介Linux操作系统优点Linux操作系统发行版1. Red Hat Linux2. CentOS3. Ubuntu4. SUSE Linux5. Fedora Linux 32位与64位操作系统的区别Linux内核命名规则 Linux操作系统简介 Linux操作系统是基于UNIX以网络为核心的设计思想&#xff0c;是一个性…

vue3 组件之间传值

vue3 组件之间传值 非常好&#xff0c;为啥突然开这样一篇博文&#xff0c;首先是因为 vue3 是未来发展的趋势。其次&#xff0c;vue 官方已经确认&#xff0c;将于2023年最后一天停止对 vue2 项目的维护&#xff0c;这个是官方发出的通知&#xff0c;并且呢&#xff0c;尤雨溪…

实现二叉树的基本操作与OJ练习

目录 1.二叉树的基本操作 1.1二叉树基本操作完整代码 1.2检测value值是否存在 1.3层序遍历 1.4判断一棵树是不是完全二叉树 2.OJ练习 2.1平衡二叉树 2.2对称二叉树 2.3二叉树遍历 1.二叉树的基本操作 1.1二叉树基本操作完整代码 public class BinaryTree {static…

UDP信号多个电脑的信息传输测试、配置指南

最近要做一个东西&#xff0c;关于一个软件上得到的信号&#xff0c;如何通过连接的局域网&#xff0c;将数据传输出去。我没做过相关的东西&#xff0c;但是我想应该和软件连接数据库的过程大致是差不多的&#xff0c;就一个ip和一个端口号啥的。 一.问题思路 多个设备同时连…