Java JDK8之前传统的日期时间-Date、SimpleDateFormat、Calendar

news2024/12/20 6:54:04

1. Date

        (1) Date代表的是日期和时间

        (2) 常见构造器和常用方法

构造器说明
public Date()创建一个Date对象,代表系统当前日期和时间
public Date(long time)根据传入的时间毫秒值创建一个Date对象
方法说明
public long getTime()返回从1970.1.1 00:00:00到此时的毫秒数
public void setTime(long time)设置日期对象的时间为传入的时间毫秒值对应的时间
public static void main(String[] args) {
        //Date

        //public Date() 创建一个Date对象,代表系统当前日期和时间
        Date date = new Date();
        System.out.println(date);

        //public long getTime()	返回从1970.1.1 00:00:00到此时的毫秒数
        long time = date.getTime();
        System.out.println(time);

        //public Date(long time) 根据传入的时间毫秒值创建一个Date对象
        Date date1 = new Date(time + 1000);
        System.out.println(date1);

        //public void setTime(long time)	设置日期对象的时间为传入的时间毫秒值对应的时间
        Date date2 = new Date();
        date2.setTime(time);
        System.out.println(date2);

}

2. SimpleDateFormat

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

        (2) SimpleDateFormat常用构造器和方法

常用构造器说明
public SimpleDateFormat(String pattern)创建简单日期格式化对象,并封装时间的格式
常用方法说明
public final String format(Date date)将日期格式化成日期/时间字符串
public final String format(Object time)将时间毫秒值格式化成日期/时间字符串

                  时间格式:

                

 public static void main(String[] args) {
        //SimpleDateFormat

        Date date = new Date();
        System.out.println(date);

        long time = date.getTime();
        System.out.println(time);

        //格式化日期时间
        SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
        
        System.out.println(sdf.format(date));
        System.out.println(sdf.format(time));
}

        (3) 时间格式常见的符号

y
M
d
H
m
s
EEE星期几
ashangwu

        (4) SimpleDateFormat把字符串解析成日期对象

                public Date parse(String source) 把字符串解析成日期对象  

public static void main(String[] args) throws ParseException {

        // public Date parse(String source) 把字符串解析成日期对象  throws ParseException 程序单选格式不一样

        String dateStr ="2024-12-19 12:00:00";
        //创建简单日期格式对象,指定的时间格式必须与被解析的时间格式一致,否则会出bug 
        SimpleDateFormat simpleDateFormat = new  SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
        Date date1 = simpleDateFormat.parse(dateStr);
        System.out.println(date1);
}

3. Calendar

        (1) Calendar 代表的是系统此刻时间对应的日历;通过他可以单独获取/修改时间中的年、月、日、时、分、秒等;

        (2) Calendar是一个抽象类;可以通过Calendar rightNow = Calendar.getInstance();来获取当前日历对象

        (3) Calendar常用的方法

常用方法说明
public static Calendar getInstance()获取当前日历对象
public int get(int field)获取日历中的某个信息
public final Date getTime()获取日期对象
public long getTimeInMillis()获取时间毫秒值
public void set(int field, int value)修改日历的某个信息
public abstract void add(int field, int amount)为某个信息增加/减少指定的值

                

public static void main(String[] args) {
        //Calendar

        //public static Calendar getInstance()	获取当前日历对象
        Calendar cal = Calendar.getInstance();
        System.out.println(cal);

        //public int get(int field)	获取日历中的某个信息
        System.out.println(cal.get(Calendar.YEAR));//年
        System.out.println(cal.get(Calendar.MONTH) + 1);//月 从0开始
        System.out.println(cal.get(Calendar.DAY_OF_MONTH));//日

        //public final Date getTime()	获取日期对象
        Date date = cal.getTime();
        System.out.println(date);

        //public long getTimeInMillis()	获取时间毫秒值
        long time = cal.getTimeInMillis();
        System.out.println(time);

        //public void set(int field, int value)	修改日历的某个信息
        cal.set(Calendar.YEAR, 2030);//修改年
        cal.set(Calendar.MONTH, 9);//修改月
        cal.set(Calendar.DAY_OF_MONTH, 6);//修改日

        //public abstract void add(int field, int amount)	为某个信息增加/减少指定的值
        cal.add(Calendar.YEAR, -5);//当前年份-5
        cal.add(Calendar.MONTH, 3);//当前月份+3
        cal.add(Calendar.DAY_OF_MONTH, +2);//当前日+2
}

        (4) Calendar 是可变对象,一旦修改后其对象本身表示的时间将发生变化

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

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

相关文章

Android简洁缩放Matrix实现图像马赛克,Kotlin

Android简洁缩放Matrix实现图像马赛克,Kotlin 原理,通过Matrix把一个原图缩小到原先的1/n,然后再把缩小后的小图放大n倍,自然就是马赛克效果(相当于是放大后像素“糊”成一片了)。 import android.content.…

Luma 视频生成 API 对接说明

随着 AI 的应用变广,各类 AI 程序已逐渐普及。AI 已逐渐深入到人们的工作生活方方面面。而 AI 涉及的行业也越来越多,从最初的写作,到医疗教育,再到现在的视频。 Luma 是一个专业高质量的视频生成平台,用户只需上传素…

解锁移动设备管理新技能-RayLink远程控制手机

在这个忙碌的现代社会中,智能手机已经成为我们生活的重要组成部分,它们不再仅仅是通讯工具,而是我们日常生活的核心。随着这种变化,远程控制手机的技术应运而生,为我们开启了一个全新的移动设备管理时代。今天&#xf…

<论文>初代GPT长什么样?

一、摘要 今天我们聊一下论文《Improving Language Understanding by Generative Pre-Training》以及它所提出来的预训练模型——GPT1。我们知道Bert在出道那会儿红极一时,但实际上GPT1比Bert还要早几个月就出道了,而且同样刷新了当时的多个任务记录。GP…

flutter 快速实现侧边栏

首先我们写一个侧边栏工具类&#xff0c;示例如下&#xff1a; import package:flutter/material.dart;class Sidebar extends StatelessWidget {overrideWidget build(BuildContext context) {return Drawer(child: ListView(padding: EdgeInsets.zero,children: <Widget&…

Odoo:免费开源ERP的AI技术赋能出海企业电子商务应用介绍

概述 伴随电子商务的持续演进&#xff0c;客户对于便利性、速度以及个性化服务的期许急剧攀升。企业务必要探寻创新之途径&#xff0c;以强化自身运营&#xff0c;并优化购物体验。达成此目标的最为行之有效的方式之一&#xff0c;便是将 AI 呼叫助手融入您的电子商务平台。我们…

[SZ901]FPGA程序固化工具使用方法

工具为脚本形式&#xff0c;前期需进行vivado版本&#xff0c;下载器端口配置 1&#xff0c;编辑 【SZ901程序固化工具.bat】&#xff0c;设置软件版本 修改软件版本和安装路径 2&#xff0c;设置下载器端口&#xff08;SZ901->USER_TCL->FlashBurn_Config.tcl&#x…

详解Redis的String类型及相关命令

目录 SET GET MGET MSET SETNX SET和SETNX和SETXX对比 INCR INCRBY DECR DECRBY INCRBYFLOAT APPEND GETRANGE SETRANGE STRLEN 内部编码 SET 将 string 类型的 value 设置到 key 中。如果 key 之前存在&#xff0c;则覆盖&#xff0c;⽆论原来的数据类型是什么…

【时间之外】IT人求职和创业应知【71】-专利费

目录 2025 ICT产业趋势年会召开&#xff0c;2024年度ICT十大新闻重磅揭晓 海纳致远数字科技申请定制化插件驱动的数据分析专利 阿波罗智联取得语音数据的处理方法、装置、设备和存储介质专利 心勿贪&#xff0c;贵知足。 感谢所有打开这个页面的朋友。人生不如意&#xff0…

生态学研究中,森林生态系统的结构、功能与稳定性是核心研究

在生态学研究中&#xff0c;森林生态系统的结构、功能与稳定性是核心研究内容之一。这些方面不仅关系到森林动态变化和物种多样性&#xff0c;还直接影响森林提供的生态服务功能及其应对环境变化的能力。森林生态系统的结构主要包括物种组成、树种多样性、树木的空间分布与密度…

MySQL追梦旅途之慢查询分析建议

一、找到慢查询 查询是否开启慢查询记录 show variables like "%slow%";log_slow_admin_statements&#xff1a; 决定是否将慢管理语句&#xff08;如 ALTER TABLE 等&#xff09;记录到慢查询日志中。 log_slow_extra &#xff1a; MySQL 和 MariaDB 中的一个系…

“AI应急管理系统:未来城市安全的守护者

大家好&#xff0c;今天我想和大家聊聊一个特别酷的话题——AI应急管理系统。想象一下&#xff0c;当城市遇到突发事件&#xff0c;比如火灾、洪水或者地震&#xff0c;我们能有一个智能系统迅速响应&#xff0c;那该多好啊&#xff01;这就是AI应急管理系统的魅力所在。 首先&…

12.9深度学习_经典神经网络_MobileNet V1V2

一、MobileNet V1 1. 铭记历史 传统的卷积神经网络参数量大&#xff0c;导致预测时算力大&#xff0c;对于手机、嵌入式等设备来讲是不行的&#xff0c;例如VGG16大概有490M&#xff0c;ResNet的152层模型有644M&#xff0c;这种是不能在移动端部署的时候不但慢还暂用空间&am…

Apache Tomcat RCE 稳定复现 保姆级!(CVE-2024-50379)附视频+POC

原文链接 Apache Tomcat 最新RCE 稳定复现分析 保姆级&#xff01;&#xff01;&#xff01;附复现视频POC 前言 最近爆出 Apache Tomcat条件竞争导致的RCE&#xff0c;影响范围当然是巨大的&#xff0c;公司也及时收到了相关情报&#xff0c;于是老大让我复现&#xff0c;以…

二、Jmeter Web压测

Jmeter Web压测 一、JMeter简介二、安装JMeter三、使用JMeter进行Web压测的基本步骤 &#xff08;一&#xff09;创建测试计划&#xff08;二&#xff09;添加HTTP请求&#xff08;三&#xff09;添加监听器&#xff08;四&#xff09;运行测试 四、高级应用 &#xff08;一&am…

【Python爬虫系列】_032.Scrapy_全站爬取

课 程 推 荐我 的 个 人 主 页:👉👉 失心疯的个人主页 👈👈入 门 教 程 推 荐 :👉👉 Python零基础入门教程合集 👈👈虚 拟 环 境 搭 建 :👉👉 Python项目虚拟环境(超详细讲解) 👈👈PyQt5 系 列 教 程:👉👉 Python GUI(PyQt5)教程合集 👈👈

[LeetCode-Python版] 定长滑动窗口——灵神思路(1)

思路 把问题拆解成三步&#xff1a;入-更新-出。 入&#xff1a;下标为 i 的元素进入窗口&#xff0c;更新相关统计量。如果 i<k−1 则重复第一步。更新&#xff1a;更新答案。一般是更新最大值/最小值。出&#xff1a;下标为 i−(k-1) 的元素离开窗口&#xff0c;更新相关…

紧固件设计之——开槽长圆柱端紧定螺钉结构仿真APP

按照产品形态分类&#xff0c;紧固件通常包括以下12类&#xff1a;螺栓、螺柱、螺钉、螺母、自攻螺钉、木螺钉、垫圈、挡圈、销、铆钉、焊钉、组合件与连接副&#xff0c;是一类用于连接和固定各种构件和零部件的重要机械零件&#xff0c;可确保机械装置或设备结构的牢固和稳定…

el-tabs标签过多

tab-position&#xff1a;top情况 .el-tabs__nav-wrap{overflow-x: auto ;width: 86% ;margin-left: 10px ; } 效果&#xff1a; tab-position&#xff1a;left情况 .el-tabs__nav-wrap{overflow-x: auto ;height: 高度 ;margin-top: 10px ; } 效果&#xff1a; 注意&…

Docker日志与监控

一、引言 随着容器技术在生产环境中被广泛应用&#xff0c;Docker容器的日志管理与监控变得尤为重要。在现代应用程序中&#xff0c;容器化的应用通常是由多个容器组成的服务&#xff0c;而容器中的日志与监控则是确保服务健康运行、诊断问题和优化性能的关键。通过日志和监控…