Java 日期处理类
日期处理类
Date类
- 当前日期时间 java.util.Date
import java.util.Date;
public class TestDemo {
public static void main(String [] args) {
Date date = new Date();
System.out.println(date);
}
}
- 运行结果:
Sat Jun 29 21:56:04 CST 2019
上述的结果表示的就是当前的日期时间,为国际标准的格式;
当然我们可以使用其他格式输出日期时间
构造方法
无参构造: public Date()
有参构造: public Date(long date)
- 接收 long 型数据,相当于把long数据转为Date
转换为 long 型: public long getTime()
- 将Date数据转为long型数据,便于格式化输出处理
system.currentTimeMillis() :取得当前的日期时间并以long型返回
import java.util.Date;
public class TestDemo {
public static void main(String [] args) {
long time = System.currentTimeMillis();// 取得系统时间
Date date = new Date( time );
System.out.println(date);
System.out.println(date.getTime());
}
}
- 运行结果:
Sat Jun 29 22:07:16 CST 2019
1561817236726
日期格式化*
SimpleDateFormat *
包:java.text.SimpleDateFormat
- 专门实现国际化开发的包
- simpleDateFormat是专门处理日期格式的类,转换为String显示
构造方法*:
- public SimpleDateFormat(String pattern)
将Date转换为String*:
- public final String format( Date date )
将String转换为Date*:
- public Date parse(String source) throws ParseException
常见的转换格式单位
| 单位 | 简写(使用) | 表示 |
|---|---|---|
| 年 | yyyy | year |
| 月 | MM | month |
| 日 | dd | Day in month |
| 时 | HH | Hour in day(0~23) |
| 分 | mm | Minute in hour |
| 秒 | ss | Second in minute |
| 毫秒 | S | Millisecond |
实例
日期格式的转换
- 将Date数据转为 String型数据
import java.text.SimpleDateFormat;
import java.util.Date;
public class TestDemo {
public static void main(String [] args) {
Date date = new Date() ;
SimpleDateFormat SDF = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss:SS");
String str = SDF.format(date);
// format: 将Date型数据变为 String型数据
System.out.println(str);
}
}
- 运行结果:
2019-06-29 22:24:50:777
程序功能简单说:
首先是Date获取时间对象,通过 SimpleDateFormat类进行日期格式化,在然后通过 format()方法将日期格式转为输出String型。
字符串转为日期
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;
public class TestDemo {
public static void main(String [] args) throws ParseException {
String str = "2012-12-25 00:00:00:000" ;
SimpleDateFormat SDF = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss:SS");
Date date = SDF.parse(str) ; //将SDF(String型)转为Date型
System.out.println(date);
}
}
- 运行结果:
Tue Dec 25 00:00:00 CST 2012
总结:
Date 与 String 类之间的转换依靠:SimpleDateFormat
String与基本数据类之间转换依靠:String。valueOf()
long 与 Date 转换依靠的是 Date 类提供的构造以及 getTime()
Calendar 类
日期计算
Calendar是一个抽象类
import java.text.ParseException;
import java.util.Calendar;
public class TestDemo {
public static void main(String [] args) throws ParseException {
Calendar cal = Calendar.getInstance(); // 取得本类对象
StringBuffer buf = new StringBuffer();
// buf 依次 append 年 月 日 时 分 秒 毫秒
buf.append(cal.get(Calendar.YEAR)).append("-");
buf.append(cal.get(Calendar.MONTH) + 1).append("-");
buf.append(cal.get(Calendar.DAY_OF_MONTH)).append(" ");
buf.append(cal.get(Calendar.HOUR_OF_DAY)).append(":");
buf.append(cal.get(Calendar.MINUTE)).append(":");
buf.append(cal.get(Calendar.SECOND)).append(":");
buf.append(cal.get(Calendar.MILLISECOND));
// 可以在append中,对日期时间进行计算操作
System.out.println(buf);
}
}
总结
- 数据库中的日期型数据使用 java.uitl.Date 表示
- 代码模型:SimpleDateFormat 类实现String与Date型数据的互相转换
Java 日期处理类的更多相关文章
- Java日期工具类,Java时间工具类,Java时间格式化
Java日期工具类,Java时间工具类,Java时间格式化 >>>>>>>>>>>>>>>>>&g ...
- java日期工具类DateUtil-续一
上篇文章中,我为大家分享了下DateUtil第一版源码,但就如同文章中所说,我发现了还存在不完善的地方,所以我又做了优化和扩展. 更新日志: 1.修正当字符串日期风格为MM-dd或yyyy-MM时,若 ...
- java日期工具类DateUtil-续二
该版本是一次较大的升级,农历相比公历复杂太多(真佩服古人的智慧),虽然有规律,但涉及到的取舍.近似的感念太多,况且本身的概念就已经很多了,我在网上也是查阅了很多的资料,虽然找到一些计算的方法,但都有些 ...
- java日期工具类DateUtil
一名优秀的程序员,不仅需要有着丰富解决问题的方案,还需要的便是代码的沉淀,这不仅有助于自己快速的开发程序,也有利于保证程序的健壮.那如何才能沉淀自己的”代码“呢?从自己编写util开始其实就是一个不错 ...
- Java日期处理类的相关使用
java常用类-java日期处理类 Date类 Date类是jdk给我们提高的标准日期类,在java.util包下: 示例代码: import java.util.Date; public class ...
- Java 日期格式化工具类
import java.text.ParseException; import java.text.SimpleDateFormat; import java.util.Calendar; impor ...
- Java日期时间类
日期时间类有三种: 一.java.util.Date:一般用于声明日期时间类型的变量. 二.java.sql.Date:一般用于数据库日期时间的映射. 三.java.util.Calendar:一般用 ...
- java 日期工具类DateUtils
日期工具类DateUtils CreateTime--2017年5月27日08:48:00Author:Marydon DateUtils.java-对日期类的进一步封装 import java. ...
- JAVA 日期工具类的总结
一般,在项目中,我们会会经常使用到日期的各种方式的处理,在各个业务逻辑操作中,都需要相关的日期操作,因此,实现项目中的日期工具类的提出,还是十分重要的,下面,就项目中常用到的日期的相关操作方式,做了一 ...
随机推荐
- ASP.NET Core 2.2 WebApi 系列【二】使用EF CodeFirst创建数据库
Code First模式 Code First是指"代码优先"或"代码先行". Code First模式将会基于编写的类和配置,自动创建模型和数据库. 一.准备 ...
- SSH框架之Struts2第一篇
1.2 Struts2的概述 : Struts2是一个基于MVC设计模式的WEB层的框架. 1.2.1 常见web层框架 Struts1,Struts2,WebWork,SpringMVC Strut ...
- C#基本语法<二>_线程
线程 多线程和异步函数 当异步线程在工作完成时如何通知调用线程 当异步线程出现异常的时候该如何处理 异步线程工作的进度如何实时的通知调用线程 如何在调用线程中取消正在工作的异步线程,并进行回滚操作 异 ...
- canvas实现七巧板图案和粒子时钟
canvas实现七巧板 <canvas id="canvas" width="800" height="800"></ ...
- 在vue项目中的js文件里使用vue实例
参考的网址:https://blog.csdn.net/weixin_34353714/article/details/86958742 不为其他,就为了记录一下,方便以后查看: 第一种方法: 1.首 ...
- python监控cpu 硬盘 内存
import psutil import time import yagmail def sendmail(subject,contents): yag = yagmail.SMTP(user='15 ...
- idea找不到terminal
起因是这样的,我要用命令行,懒,不想开cmd但是该死的我的idea找不见terminal,好奇怪哦,于是我查了一下,原来设置它蒙蔽了我的眼. 下面给出流程: 一般像我这样比较好学的好孩子不懂就比较喜欢 ...
- RF自动化测试之元素封装
自动化测试均需要遵循由点到面的规则,然而对于UI自动化,点是最容易发生变化的,如果使用硬链接,那么每次元素的修改都必须修改代码,这对于代码功底薄弱的测试工程师来说,是较为困难的,所以自动化测试需要对底 ...
- LG1131 「ZJOI2007」时态同步 树形DP
问题描述 LG1131 题解 正难则反,把从一个点出发到叶子结点看做从叶子结点走到那个点. DP方程很显然. \(\mathrm{Code}\) #include<bits/stdc++.h&g ...
- WPF combobox数据绑定和数据获取
本文章仅为个人学习,如有错误之处请指正. 搭建WPF界面的时候,想用combobox构建一个下拉菜单,搜索的时候看到大多数都是大段代码,逻辑顺序不是很详细,摸索了大概,记录一下方便来者. 拖入comb ...