前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。点击跳转到网站。

最近项目中需要用到SimpleDateFormat 格式化日期,但是因为对日期格式的不熟练多花了十分钟左右的时间在日期格式化上面,所以趁着周末外面下着大雨闲着无聊整理一下日期格式问题。

日期格式化学习

  • 预定义格式
    • 日期格式化样式
  • 自定义日期格式化

预定义格式

java提供了预定义的日期格式,预定义的日期格式可以满足绝大多数的场景需要。
格式化日期需要两步:
1、通过DateFormat.getDateInstance() 获取一个DateFormat对象。
2、调用DateFormat对象的format方法返回一个String类型的日期。
话不多说看代码:

DateFormat dateInstance = DateFormat.getDateInstance();System.out.println(dateInstance.format(new Date()));

输出结果:

2019-7-7

日期格式化样式

在通过DateFormat.getDateInstance()创建实例时使用了默认的日期格式化样式,DateFormat还提供了其他格式化样式。

    public static final int FULL = 0;          //全日期public static final int LONG = 1;         //长日期public static final int MEDIUM = 2;      //中日期public static final int SHORT = 3;      //短日期public static final int DEFAULT = MEDIUM;  //默认为中日期

各个日期样式如下(系统为中文环境):

日期样式 示例
FULL 2019年7月7日 星期日
LONG 2019年7月7日
MEDIUM 2019-7-7
SHORT 19-7-7
DEFAULT 2019-7-7
DateFormat.getDateInstance()实例只能够获取年月日信息,如果想要获取时间信息要使用DateFormat.getTimeInstance() 实例,DateFormat.getTimeInstance()使用的常量参数和DateFormat.getDateInstance()相同。
时间日期样式:
时间样式 示例
FULL 下午06时21分51秒 CST
LONG 下午06时23分08秒
MEDIUM 18:23:35
SHORT 下午6:23
DEFAULT 18:23:35
一个简单示例:
  DateFormat dateInstance = DateFormat.getDateInstance(DateFormat.LONG);DateFormat timeInstance = DateFormat.getTimeInstance(DateFormat.LONG);System.out.println(dateInstance.format(new Date()) +" "+timeInstance.format(new Date()));

输出结果:

2019年7月7日 下午06时28分40秒

通过 DateFormat.getDateInstance() 和 DateFormat.getTimeInstance() 组合就可以对日期进行格式化了。

自定义日期格式化

如果预定义的日期格式化不好用的话可以使用自定义日期格式化。使用自定义日期格式化需要创建SimpleDateFormat实例。
先了解一下自定义日期格式化语法:

表中符号可以单个使用也可以自由组合,除了这些字母以外的符号都算做修饰符,不会进行转换。
示例:

SimpleDateFormat dateFormat = new SimpleDateFormat( "G yyyy年-MM月-dd日 a HH时:mm分:ss秒:sss");
System.out.println(dateFormat.format(new Date()));
SimpleDateFormat dateFormat = new SimpleDateFormat( "D");
System.out.println("今天是今年的第"+new SimpleDateFormat("D").format(new Date())+"天");
System.out.println("今天"+new SimpleDateFormat("E").format(new Date()));
System.out.println("今天是今年的第"+new SimpleDateFormat("w").format(new Date())+"周");
System.out.println("今天"+new SimpleDateFormat("E" , Locale.ENGLISH).format(new Date()));

输出:

现在是 公元 2019年-07月-07日 下午 20时:34分:28秒:028
今天是今年的第188天
今天星期日
今天是今年的第28周
今天Mon

这些东西虽然使用起来不难,但是能记住的话还是能省些时间的。

JAVA 日期格式化相关推荐

  1. java日期格式精确到分_详解Java日期格式化及其使用例子

    Java日期格式化及其使用例子 1 SimpleDateFormat担当重任,怎样格式化都行 import java.util.Date; import java.text.SimpleDateFor ...

  2. JAVA日期格式化类

    JAVA日期格式化类 1.日期格式化类 java.text.SimpleDateFormat简单日期格式化 [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-J3dmn0m ...

  3. java 日期格式化-- SimpleDateFormat 的使用。字符串转日期,日期转字符串

    日期和时间格式由 日期和时间模式字符串 指定.在 日期和时间模式字符串 中,未加引号的字母 'A' 到 'Z' 和 'a' 到 'z' 被解释为模式字母,用来表示日期或时间字符串元素.文本可以使用单引 ...

  4. mysql java 日期格式化_(转)java向MySQL插入当前时间的四种方式和java时间日期格式化的几种方法(案例说明)...

    java向MySQL插入当前时间的四种方式和java时间日期格式化的几种方法(案例说明);部分资料参考网络资源 1. java向MySQL插入当前时间的四种方式 第一种:将java.util.Date ...

  5. java日期格式化、解析

    http://blog.csdn.net/wkupaochuan/article/details/7663276 今天移植别人的通用工具类,涉及到了日期的格式化.解析,学习结果记录如下. 日期的格式化 ...

  6. java日期格式化YYYY-MM-dd遇坑指南

    前几天写日期格式化工具类,自己做测试的时候,无意中发现一个问题,如果把format参数设置成YYYY-MM-DD,输出的结果很奇怪. Date result1 = string2Date(" ...

  7. java日期格式化代码的写法_Java中的`DateTimeFormatter`格式化代码中的`uuuu`与`yyyy`?...

    在java.time-package的范围内,我们可以说: >使用"u"代替"y"更安全,因为DateTimeFormatter将坚持将时代与" ...

  8. java日期格式化yyyy-mm-dd

    在 Java 中,你可以使用 SimpleDateFormat 类来格式化日期.以 "yyyy-MM-dd" 为例,你可以这样写: SimpleDateFormat dateFor ...

  9. Java日期格式化(DateFormat类和SimpleDateFormat类)

    格式化日期表示将日期/时间格式转换为预先定义的日期/时间格式.例如将日期"Fri May 18 15:46:24 CST2016" 格式转换为 "2016-5-18 15 ...

  10. Java日期格式化SimpleDateFormat

    package test;import java.text.SimpleDateFormat; import java.util.Date;public class TestDate {public ...

最新文章

  1. red5下nginx安装配置
  2. echarts导入mysql数据库_Echarts最新:Django中从mysql数据库中获取数据传到echarts方式_爱安网 LoveAn.com...
  3. latex公式对齐_论文中的公式如何对齐
  4. php 调用系统命令 执行外部程序
  5. sublime text常用快捷键及多行光标批量操作教程
  6. VB.NET通讯录源代码
  7. 01_Struts2概述及环境搭建
  8. mysql的增_MySQL之增_insert-replace
  9. 视频直播卡顿分析及优化
  10. wow工程修理机器人图纸_wow修理机器人74a型介绍及图纸怎么得
  11. 乾颐堂现任明教教主(2014年课程)TCPIP协议详解卷一 第四节课笔记
  12. Alsa是Linux高级音频接口(百度文库无下载券抄来的)
  13. 任务管理器怎么重启计算机,用任务管理器解决软件假死无需重启电脑
  14. 转行计算机,如何成功进入大厂?
  15. 【九校3D2T3】世界第一的猛汉王
  16. 疫情之下,征信有逾期如何处理?
  17. 如何将喜马拉雅FM的音频下载下来保存
  18. 前端核武器:开源FrontendBlocks所见即所得低代码编辑器让所有人都能做前端布局
  19. getActivePinia was called with no active Pinia.
  20. 打开SQL2000安装包没有弹出安装界面

热门文章

  1. Neo4j的下载与安装
  2. diabetes影响因子2017_瑞金医院创办Journal of Diabetes成为亚太地区影响因子最高的糖尿病学术期刊...
  3. 黑客为什么不攻击支付宝?
  4. 使用OpenLayers发布离线地图(谷歌地图)
  5. 信息安全概论复习笔记
  6. k6前级效果器怎么用_【易开EK-K6 DSP 专业 数字前级效果器 前置】价格_厂家_图片 -Hc360慧聪网...
  7. 相机dc内置滤镜 千奇百怪不离其踪 漫谈数码相机内置滤镜
  8. 2021年危险化学品经营单位安全管理人员考试题及危险化学品经营单位安全管理人员模拟试题
  9. linux上apk免杀,kali 免杀工具shellter安装以及使用(示例代码)
  10. python数据分析与应用-Python数据分析与应用 PDF 内部全资料版