DateFormat类

2023-11-18

DateFormat类

  • DateFormat类用于将日期格式化为字符串或者将用特定格式显示的日期字符串转换成一个Date对象
  • DateFormat是一个抽象类,不能直接被实例化
  • 提供了一系列静态方法来获取DateFormat类的实例对象

DateFormat的常用方法

方法声明                                       功能描述
    
static DateFormat getDateInstance()   //用于创建默认语言环境和格式化风格的日期格式器
static DateFormat getDateInstance(int style)    //用于创建默认语言环境和指定格式化风格的日期格式器
static DateFormat getDateTimeInstance()  //用于创建默认语言环境和格式化风格的日期/时间格式器  
static DateFormat getDateTimeInstance(int dayStyle,int timeStyle)   //用于创建默认语言环境和指定格式化风格的日期/时间格式器      
String format(Date date)  //将一个Date格式化为日期/时间字符串
Date parse(String source)    //将给定字符串解析成一个日期

其中,四个静态方法能用于获得DateFormat类的实例对象,每种方法返回的对象都具有不同的作用,衙门可以对日期或者时间部分进行格式化。

DateFormat类中还定义了许多常量,其中有四个常量作为参数传递给对方法

  1. FULL常量表示完整格式
  2. LONG常量表示长格式
  3. MEDIUM常量表示普通格式
  4. SHORT常量表示段格式
package com.sgl;

import java.text.DateFormat;
import java.util.Date;

public class Test {
    public static void main(String[] args){
        long startTime = System.currentTimeMillis(); //循环开始时的当前时间

        //创建Date对象
        Date date = new Date();
        //Full格式的日期格式器对象
        DateFormat fullFormat = DateFormat.getDateInstance(DateFormat.FULL);
        //Long格式的日期格式器对象
        DateFormat longFormat = DateFormat.getDateInstance(DateFormat.LONG);
        //MEDIUM格式的日期/时间格式器对象
        DateFormat mediumFormat = DateFormat.getDateTimeInstance(DateFormat.MEDIUM,DateFormat.MEDIUM);
        //SHORT格式的日期/时间格式器对象
        DateFormat shortFormat = DateFormat.getDateTimeInstance(DateFormat.SHORT,DateFormat.SHORT);

        //打印格式话后的日期或者日期/时间
        System.out.println("当前日期的完整格式:"+fullFormat.format(date));
        System.out.println("当前日期的长格式:"+longFormat.format(date));
        System.out.println("当前日期的普通格式:"+mediumFormat.format(date));
        System.out.println("当前日期的短格式:"+shortFormat.format(date));
        /*运行结果:
        当前日期的完整格式:2021年8月2日 星期一
        当前日期的长格式:2021年8月2日
        当前日期的普通格式:2021-8-2 14:23:23
        当前日期的短格式:21-8-2 下午2:23
         */

        
        long endTime = System.currentTimeMillis();  //循环结束时的当前时间
        System.out.println("程序运行时间为:"+(endTime - startTime)+"毫秒");  //程序运行时间为:28毫秒   值不确定
    }

}

简述:

调用getDateInstance()方法获得的实例对象用于对日期部分进行格式化,getDateTimeInstance()方法获得的实例对象可以对日期和时间部分进行实例化。

parse(String source)方法,将一个字符串解析成Date对象,要求字符串必须符合日期/时间的格式要求

例子:

package com.sgl;

import java.text.DateFormat;

public class Test {
    public static void main(String[] args){
        long startTime = System.currentTimeMillis(); //循环开始时的当前时间

        //创建一个Dateformat对象
        DateFormat dt1 = DateFormat.getDateInstance();
        //创建Long格式的DateFormat对象
        DateFormat dt2 = DateFormat.getDateInstance(DateFormat.LONG);
        //定义两个日期格式的字符串
        String str1 = "2021-08-02";
        String str2 = "2021年8月2日";
        //输出对应格式的字符串解析成Date对象后的结果
        System.out.println(dt1.parse(str1));         //Mon Aug 02 00:00:00 CST 2021
        System.out.println(dt2.parse(str2));         //Mon Aug 02 00:00:00 CST 2021


        long endTime = System.currentTimeMillis();  //循环结束时的当前时间
        System.out.println("程序运行时间为:"+(endTime - startTime)+"毫秒");  //程序运行时间为:28毫秒   值不确定
    }

}

简述:首先创建了一个普通的DateFormat对象,以及Long格式的DateFormat对象,然后定义了两种日期格式的字符串,最后调用parse()方法将对应的字符串解析成Date对象。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

DateFormat类 的相关文章

  • 尝试使用 Eclipse 启动 Glassfish 服务器时出现 org.apache.catalina.LifecycleException

    我一直忙于使用 angularjs 前端构建一个 REST 应用程序 使用 MAVEN jersey quickstart webapp 使用 GLASSFISH Web 服务器在 Eclipse 上开发 今天 当我开始对项目进行一些开发时
  • JavaEE 8 教程,在 hello1 项目上部署失败

    我正在尝试学习 Java EE 8 我遵循了官方指南https javaee github io tutorial https javaee github io tutorial 但我有这个问题 cargo maven2 plugin 1
  • V8 如何管理它的堆?

    我知道V8的垃圾收集在工作时 会从GC的root开始追踪 这样无法到达的对象就会被标记然后被清除 我的问题是GC是如何遍历那些对象的 必须有一个数据结构来存储所有可达或不可达的对象 位图 链接表 顺便说一句 JVM 也做同样的事情吗 艾伦秀
  • Maven + Cobertura:无法找到[您的班级]。你指定了源目录吗?

    我有 MyMath 类 有两个简单的方法 multi 和 add 和测试类只会测试多种方法 public class MainTest Test public void testMultiply MyMath tester new MyMa
  • java“void”和“非void”构造函数

    我用 java 编写了这个简单的类 只是为了测试它的一些功能 public class class1 public static Integer value 0 public class1 da public int da class1 v
  • 如何解决错误:java.lang.ClassNotFoundException:io.netty.util.concurrent.GenericFutureListener?

    昨天我第一次尝试用 Java 制作 Prometheus 客户端 从 Python 开始 最后是 GoLang 是否找到示例 import io prometheus client Counter import io prometheus
  • 在气球内显示带有照片的多个地标的最佳做法是什么?

    我有一个项目如下 从手机上拍摄几张照片 将照片保存在网络系统中 然后将照片显示在其中的谷歌地球上 我读过很多文章 但它们都使用 fetchKml 我读过的一篇好文章是使用 php 但使用 fetchKml 我不知道是否可以使用 parseK
  • 如何在具有动态列的表中插入值 Jdbc/Mysql

    我想在具有动态列的表中添加值 我设法创建一个包含动态列的表 但我不知道如何插入数据 Create Table sql CREATE TABLE MyDB myTable level INTEGER 255 int columnNumber
  • 独占锁定ConcurrentHashMap

    我知道不可能锁定 ConcurrentHashMap 进行独占访问 但是 我找不到原因 是因为构成CHM的 Segment 没有被api公开吗 据推测 如果是的话 客户端代码可以执行 交接 锁定 Cheers 我知道不可能锁定 Concur
  • LibGdx 如何使用 OrthographicCamera 滚动?

    我已经找了 10 个小时 字面意思 我已经完成了 我需要问一下 事情是我正在学习如何使用 LibGdx 来编写 Java 游戏 我正在做一个水平太空飞船游戏 所以 我最糟糕的问题是我不知道如何滚动 我认为绘制会更好地解释 我想绘制一个巨大的
  • 如何自定义JProgressBar?

    我正在制作一个启动器 我想要一个自定义的进度栏 我已经做了一些研究 并且可以使用 JavaFX 从未用它做过任何事情 并且可以通过替换 UI 来实现 我正在寻找一个具有圆形边缘和圆形填充的酒吧 像这样的事情 package gui impo
  • java JFileChooser 文件大小过滤器

    我知道我可以按文件类型进行过滤 但是可以按文件大小进行过滤吗 例如 JFileChooser 仅显示 3 MB 以内的图片 简短的回答应该是 你尝试过什么 长答案是肯定的 JFileChooser fc new JFileChooser f
  • grails 上的同步块在 Windows 上有效,但在 Linux 上无效

    我有一个 grails 应用程序 它依赖于服务中的同步块 当我在 Windows 上运行它时 同步按预期工作 但当我在 ams linux 上运行时 会出现 StaleObjectStateException 该问题在以下示例中重现 cla
  • Java G1 GC 处理引用对象运行缓慢

    我已经在 J ava 上运行了计数器 它24小时工作 每秒点击通过100次左右 白天 GC 处理时间从 20 60 毫秒缓慢上升到 10000 60000 毫秒 然后下降到 20 60 毫秒 这种模式不时地重复 从 GC 日志中我发现 GC
  • .class 与 .java

    class 文件和 java 文件有什么区别 我正在尝试让我的小程序工作 但目前我只能在 Eclipse 中运行它 还不能嵌入 HTML 谢谢 编辑 那么如何使用 JVM 进行编译呢 class 文件是编译后的 java 文件 java 都
  • 哪种 Java DOM 包装器是最好或最受欢迎的? [关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心 help reopen questi
  • Mule/码头设置

    我有一个正在运行的 Mule 应用程序 我想在其上设置 Jetty 来响应 http 请求 以下配置
  • 将字符串中的字符向左移动

    我是 Stack Overflow 的新手 有一道编程课的实验室问题一直困扰着我 该问题要求我们将字符串 s 的元素向左移动 k 次 例如 如果输入是 Hello World 和3 它将输出 lo WorldHel 对于非常大的 k 值 它
  • Java泛型类型

    当我有一个界面时 public interface Foo
  • 如何在Java中跨类共享变量,我尝试了静态不起作用

    类 Testclass1 有一个变量 有一些执行会改变变量的值 现在在同一个包中有类 Testclass2 我将如何访问 Testclass2 中变量的更新值 由 Testclass1 更新 试过这个没用 注意 Testclass1和Tes

随机推荐

  • java代码编写规范,讲的太透彻了

    什么是ACID 事务的定义和实现一直随着数据管理的发展在演进 当计算机越来越强大 它们就能够被用来管理越来越多数据 最终 多个用户可以在一台计算机上共享数据 这就导致了一个问题 当一个用户修改了数据而另外一个还在使用旧数据进行计算过程中 这
  • 符号“∑”的用法

    和 分别用来表示求和与求积 Sigma X 将X中的值全部相加 XF XF X表示的是产量 这个没有错 F表示有同样产量X的人数 数学上称为频数 就是英语的Frequency XF的意思 不是人均产量 人数 而是产量X 产量为X的人数 例如
  • EJBCA操作说明(二)java操作

    ejbca web界面操作 代码下载地址 初始化获得EJBCA实例 初始化EjbcaWS 获得EJBCA服务端Webservice实例 return public static EjbcaWS init EjbcaWS ejbcaWS nu
  • 单元测试 实体

    单元测试 实体 代码 Before public void setUp userVoTest new UserVo Test public void testEquals final boolean result userVoTest eq
  • C语言编译遇到的错误提示总结

    C语言编译遇到的错误提示总结 error1 expected asm or attribute before token error1 expected asm or attribute before token 解决方案 很有可能是你定义
  • Java常见面试题

    1 进程和线程的区别 1 进程是内存中运行的程序 是操作系统资源分配的基本单元 在windows操作系统中运行的每一个exe文件就是一个进程 每个进程都有独立的代码和数据空间 程序上下文 所以程序之间切换开销比较大 2 线程是处理器任务调度
  • stm32f407 bootloader程序制作 bootloader(基于rtthread3.3.0 sfud easyflash等库) 升级APP(基于rtthread的app)

    本位将介绍stm32f407vgt6 芯片制作bootloader程序 用作app的远程升级 一 硬件介绍 stm32f407vgt6 主频 166MHZ flash 1M SRAM 192K stm32f407vgt6 使用的phy芯片为
  • 微信小程序顶部栏图片随页面滚动渐变展示隐藏

    微信小程序顶部栏图片随页面滚动渐变展示隐藏 小程序顶部通栏 展示图片 随着页面滚动 开始渐变展标题记及纯色吸顶样式 主要使用了小程序中的scroll view组件 通过滚动时触发 bindscroll和滚动到顶部 bindscrolltou
  • LeetCode 67. 二进制求和

    题目链接 https leetcode cn problems add binary 思路如下 高精度加法 从低位到高位逐个对应相加 C 代码如下 class Solution public string addBinary string
  • 登录安全

    1 前端将用户名和密码rsa加密 后端解密 2 为防止登录数据被拦截而被复制登录 登录数据添加当前时间戳或加密后唯一字段 后端每一次登录成功后将时间戳或唯一字段加工后作为一个redis键名保存 值随便 缓存时间和登录有效时间一致 以保证登录
  • 【NLP】大模型综述来了!一文带你理清全球AI巨头的大模型进化史

    夕小瑶科技说 原创 作者 小戏 Python 如果自己是一个大模型的小白 第一眼看到 GPT PaLm LLaMA 这些单词的怪异组合会作何感想 假如再往深里入门 又看到 BERT BART RoBERTa ELMo 这些奇奇怪怪的词一个接
  • 三局两胜制下获得首胜后最后获胜的概率

    之前看NBA的时候 说拿下天王山之战的战队有83 3 差不多这个值 的概率拿下最后的胜利 当时感觉很奇怪 为什么这么接近5 6而不是3 4呢 然后自己算了一下 还真是 先说下为什么不是3 4的原因 3 4很容易算出来 1 2 1 2 可是后
  • 如何利用阿里云服务器快照策略为数据备份

    阿里云服务器快照 是一个很好的备份容灾工具 不了解的可以先了解一下 快照可以做什么 这是一种便捷高效的数据保护服务手段 可以对重要业务数据进行备份 来应对误操作 攻击 病毒等导致的数据丢失风险 比如前段时间的勒索病毒事件 假设你中招后所有数
  • Django下载图片接口

    import logging from django http import HttpResponse FileResponse from io import BytesIO from urllib parse import quote c
  • 还是得从代码角度看yolov5(1)

    train 参考文章 又是经典写到一半发现别人写的更好 基础函数 1 setattr setattr opt k v 将给定对象上的命名属性设置为指定值 等价于opt k v 2 getattr callback getattr logge
  • Pandas的学习(3.DataFrame的创建方法和三种索引方法(iloc、loc、values)以及切片)

    DataFrame DataFrame是一个 表格型 的数据结构 可以看做是 由Series组成的字典 共用同一个索引 DataFrame由按一定顺序排列的多列数据组成 设计初衷是将Series的使用场景从一维拓展到多维 DataFrame
  • 校验金额正则2--onchange触发校验

    用法 鼠标输入失去焦点的时候出发onchange属性调用js校验正则方法 正则校验reg1 test 不正确返回false 正确返回true 定义mm做判断 缺点 return直接退出了 如果需要重复操作不可取 或者不用return htm
  • PHP XAMPP配置PHP环境和Apache80端口被占用解决方案

    LAMP Linux Apache MySQL PHP 或WAMP Windows Apache MySQL PHP 是一门关于PHP架构网站的课程 它可以使用XAMPP软件 Apache MySQL PHP集成开发包 搭建PHP环境进行网
  • 从Docker到Kubernetes——K8s网络核心原理

    文章目录 Dokcer的网络模型 kubernetes网络核心原理 IP per Pod模型 Kubernetes网络插件flannel Dokcer的网络模型 Dokcer默认使用单主机的网络方案 它默认创建一个名为docker0的网桥
  • DateFormat类

    DateFormat类 DateFormat类用于将日期格式化为字符串或者将用特定格式显示的日期字符串转换成一个Date对象 DateFormat是一个抽象类 不能直接被实例化 提供了一系列静态方法来获取DateFormat类的实例对象 D