Java 日期处理类
Posted wangyuyang1016
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了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 日期处理类的主要内容,如果未能解决你的问题,请参考以下文章