JAVA基础——时间Date类型转换
在java中有六大时间类,分别是:
1、java.util包下的Date类,
2、java.sql包下的Date类,
3、java.text包下的DateFormat类,(抽象类)
4、java.text包下的SimpleDateFormat类,
5、java.util包下的Calendar类,(抽象类)
6、java.sql包下的Time类,
7、java.sql包下的TimeStamp类。
一、java.util包下的Date类:
Date主要用来生成时间,Date有两个构造方法:Date()和Date(long date)


二、java.text包下的DateFormat类,(抽象类):
DateFormat继承自Format。


下面两个是实现的接口,两个接口无任何内容:


DateFormat是时间/日期格式化子类的抽象类,所以不能有构造方法实例化,可以用两个静态函数进行实例化。
getDateInstance()------返回的是日期
getDateTimeInstance()--------------------返回的是时间+日期。
三、java.text包下的SimpleDateFormat类:
SimpleDateFormat继承自DateFormat类,
主要功能是:完成日期之间的格式转换。
yyyy:MM:dd,HH:mm:ss:SSS(SSS是毫秒数)

四、java.util包下的Calendar类,(抽象类):
此类实例化有两种方式:
1、Calendar time=new GregorianCalendar();
2、Calendar time =Calendar.getInstance();

此类和日历相关:“YEAR”年,“MONTH”月,“DAY_OF_MONTH”日,"DAY_OF_WEEK"星期,"HOUR"小时。如:

五、java.sql包下的Date类:
只针对SQL语句使用,Date date=new Date();(也就=2017-01-01,没有时间部分)
六、java.sql包下的Time类,
七、java.sql包下的TimeStamp类。


输出结果:

输出结果:

结果:

结果:



结果:
package test; import java.text.DateFormat;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;
import java.util.GregorianCalendar; public class time {
public static void main(String[] args) throws ParseException {
// 将当前日期对象转换成毫秒值
Date date1 = new Date();
Long time1 = date1.getTime();
Long time2 = System.currentTimeMillis();// 获取当前时间的毫秒值
Calendar cal=Calendar.getInstance();
Long caltime=cal.getTimeInMillis();
System.out.println("当前日期对象转换成毫秒值:" + time2+" Calendar类日期转换成毫秒值:"+caltime); // 将毫秒值转换成日期对象
Date date2 = new Date();
Long time3 = System.currentTimeMillis();
date2.setTime(time3); // 将日期字符串转换成日期对象
DateFormat df1 = new SimpleDateFormat("yyyy/MM/dd");
Date date3 = df1.parse("2017/01/12");
System.out.println("日期字符串转换成日期对象:" + date3); SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");
Date date = df.parse("2009-06-12 02:06:37");
System.out.println("日期字符串转换成日期格式:" + df.format(date)); // 将日期对象转换成日期字符串
Date datetime = new Date();
SimpleDateFormat sdf = new SimpleDateFormat("yyyy/MM/dd");
String stringtime = sdf.format(datetime);
System.out.println("日期对象转换成日期字符串:" + stringtime); Date date4 = new Date();
DateFormat df41 = DateFormat.getDateInstance(DateFormat.LONG);
DateFormat df42 = DateFormat.getDateTimeInstance(DateFormat.LONG, DateFormat.LONG);
String time4 = df41.format(date4);
String time5 = df42.format(date4);
System.out.println("getDateInstance时间:" + time4 + " getDateTimeInstance时间:" + time5); Date d = new Date();
DateFormat df43 = DateFormat.getDateInstance(DateFormat.FULL);
DateFormat df44 = DateFormat.getDateInstance(DateFormat.SHORT);
DateFormat df45 = DateFormat.getDateInstance(DateFormat.MEDIUM);
String time43 = df43.format(d);
String time44 = df44.format(d);
String time45 = df45.format(d);
System.out.println("FULL类型时间:" + time43);
System.out.println("SHORT类型时间:" + time44);
System.out.println("MEDIUM类型时间:" + time45); // 日历
Calendar time = Calendar.getInstance();
int year = time.get(Calendar.YEAR);
int month = time.get(Calendar.MONTH);
int day = time.get(Calendar.DAY_OF_MONTH);
int week = time.get(Calendar.DAY_OF_WEEK);
int hour = time.get(Calendar.HOUR);
System.out.println("当前时间是:" + year + "年" + month + "月" + day + "日,星期" + week + "," + hour + "点");
}
}
当前日期对象转换成毫秒值:1504089815431 Calendar类日期转换成毫秒值:1504089815441
日期字符串转换成日期对象:Thu Jan 12 00:00:00 CST 2017
日期字符串转换成日期格式:2009-06-12 02:06:37
日期对象转换成日期字符串:2017/08/30
getDateInstance时间:2017年8月30日 getDateTimeInstance时间:2017年8月30日 下午06时43分35秒
FULL类型时间:2017年8月30日 星期三
SHORT类型时间:17-8-30
MEDIUM类型时间:2017-8-30
当前时间是:2017年7月30日,星期4,6点
JAVA基础——时间Date类型转换的更多相关文章
- Java 日期时间 Date类型,long类型,String类型表现形式的转换
Java 日期时间 Date类型,long类型,String类型表现形式的转换 1.java.util.Date类型转换成long类型 java.util.Date dt = new Date(); ...
- Java 日期时间 Date类型,long类型,String类型表现形式的转换 (转)
Java 日期时间 Date类型,long类型,String类型表现形式的转换 1.java.util.Date类型转换成long类型java.util.Date dt = new Date();Sy ...
- 3.Java基础之Date对象
毕向东老师Java基础学习笔记——Date对象 今天学习Java中的Date对象后,感觉这个对象对我们主要有以下几点用处. 1.获取时间和日期并按照自己定义的格式显示. 2.网站设计时显示时间. 知 ...
- java基础系列--Date类
原创作品,可以转载,但是请标注出处地址:http://www.cnblogs.com/V1haoge/p/7126930.html 1.Date类概述 Date类是从JDK1.1就开始存在的老类,其提 ...
- Java基础-时间类
关于java中六个时间类的使用和区别 java.util.Date java.sql.Date ,java.sql.Time , java.sql.Timestamp java.text.Simple ...
- 【java】JDK1.8时间日期库 新特性 所有java中时间Date的使用
除了lambda表达式,stream以及几个小的改进之外,Java 8还引入了一套全新的时间日期API,在本篇教程中我们将通过几个简单的任务示例来学习如何使用java 8的这套API.Java对日期, ...
- java基础之Date类
Date类: Date类概述 类 Date 表示特定的瞬间,精确到毫秒. 构造方法 public Date() public Date(long date) 成员方法 public long getT ...
- Java基础:数值类型转换、强制类型转换
数值类型之间的转换 数值类型之间的转换,在小数值往大数值转换时,不会发生精度的损失.在小数值往大数值转换时有可能发生精度的损失. 比如byte最大值也只有127,如果一个大于127的int类型数据往b ...
- Java日期时间(Date/Time)
获取当前日期和时间 在Java中容易得到当前的日期和时间.可以使用一个简单的Date对象的toString()方法,如下所示打印当前日期和时间: import java.util.Date; publ ...
随机推荐
- VS2017 配置freeglut3.0.0
配置freeglut: 1. 先下载cmake和freeglut3.0.0文件,并使用cmake编译freeglut,再使用vs2017生成解决方案,详细步骤见https://blog.csdn.ne ...
- VI/VIM 无法使用系统剪贴板(clipboard)?(Ubuntu&Mac OS X已解决)
在 Ubuntu/Mac OS X 中使用VI/VIM时,发现无法使用系统的剪贴板. Ubuntu 上网一查,原来是少装了几个东西. 使用如下命令,安装相关的包.安装成功后,就可以使用系统剪贴板了. ...
- linux如何查看某个端口是否开放
1.你可以使用 lsof 命令来查看某一端口是否开放.查看端口可以这样来使用,我就以80端口为例: lsof -i:80 或者 lsof -i:22如果有显示说明已经开放了,如果没有显示说明没有开放 ...
- Xshell登录Ubuntu12.04
Ubuntu安装ssh服务: sudo apt-get install openssh-server 打开Xshell,选择“新建”,“连接”设置里选择SSH,主机填入需要连接的主机的IP地址.在“用 ...
- Jenkins Docker安装及Docker build step插件部署配置
生产部署环境:A:192.168.1.2 B:192.168.1.3 两台服务器系统均是Centos 7.3 , Docker版本都1.12.6 Jenkins安装操作步骤: 1.在A服务器上使用命 ...
- go 的正则表达式
go 操作字符串.由于 go 中的字符串不是对象,所以没有直接操作字符串的相关方法.要操作字符串可以使用 strings 包或者 regexp 包处理. 一.简要介绍一下,strings 包 (str ...
- easyui---combogrid
选择一个数据表格某行记录 依赖panel 和datagrid combogrid:<select id="cc" name="dept" style=&q ...
- JS 通过字符串取得对应对象
//对Array的扩展,查找所有满足条件的元素 Array.prototype.findAll = function (match) { var tmp = []; for (var i = 0; i ...
- PAT甲级1013-1014-1015
题目:1013 Battle Over Cities 思路:城市数也就1000, 对于每次询问暴力bfs一下看一下有多少连通块就行了.答案就是联通块数减一. #include<stdio.h&g ...
- POJ 3278 Catch That Cow[BFS+队列+剪枝]
第一篇博客,格式惨不忍睹.首先感谢一下鼓励我写博客的大佬@Titordong其次就是感谢一群大佬激励我不断前行@Chunibyo@Tiancfq因为室友tanty强烈要求出现,附上他的名字. Catc ...