zoukankan      html  css  js  c++  java
  • 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类。

    输出结果:

    输出结果:

    结果:

    结果:

    结果:

     1 package test;
     2 
     3 import java.text.DateFormat;
     4 import java.text.ParseException;
     5 import java.text.SimpleDateFormat;
     6 import java.util.Calendar;
     7 import java.util.Date;
     8 import java.util.GregorianCalendar;
     9 
    10 public class time {
    11     public static void main(String[] args) throws ParseException {
    12         // 将当前日期对象转换成毫秒值
    13         Date date1 = new Date();
    14         Long time1 = date1.getTime();
    15         Long time2 = System.currentTimeMillis();// 获取当前时间的毫秒值
    16         Calendar cal=Calendar.getInstance();
    17         Long caltime=cal.getTimeInMillis();
    18         System.out.println("当前日期对象转换成毫秒值:" + time2+"       Calendar类日期转换成毫秒值:"+caltime);
    19 
    20         // 将毫秒值转换成日期对象
    21         Date date2 = new Date();
    22         Long time3 = System.currentTimeMillis();
    23         date2.setTime(time3);
    24 
    25         // 将日期字符串转换成日期对象
    26         DateFormat df1 = new SimpleDateFormat("yyyy/MM/dd");
    27         Date date3 = df1.parse("2017/01/12");
    28         System.out.println("日期字符串转换成日期对象:" + date3);
    29 
    30         SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");
    31         Date date = df.parse("2009-06-12 02:06:37");
    32         System.out.println("日期字符串转换成日期格式:" + df.format(date));
    33 
    34         // 将日期对象转换成日期字符串
    35         Date datetime = new Date();
    36         SimpleDateFormat sdf = new SimpleDateFormat("yyyy/MM/dd");
    37         String stringtime = sdf.format(datetime);
    38         System.out.println("日期对象转换成日期字符串:" + stringtime);
    39 
    40         Date date4 = new Date();
    41         DateFormat df41 = DateFormat.getDateInstance(DateFormat.LONG);
    42         DateFormat df42 = DateFormat.getDateTimeInstance(DateFormat.LONG, DateFormat.LONG);
    43         String time4 = df41.format(date4);
    44         String time5 = df42.format(date4);
    45         System.out.println("getDateInstance时间:" + time4 + "    getDateTimeInstance时间:" + time5);
    46 
    47         Date d = new Date();
    48         DateFormat df43 = DateFormat.getDateInstance(DateFormat.FULL);
    49         DateFormat df44 = DateFormat.getDateInstance(DateFormat.SHORT);
    50         DateFormat df45 = DateFormat.getDateInstance(DateFormat.MEDIUM);
    51         String time43 = df43.format(d);
    52         String time44 = df44.format(d);
    53         String time45 = df45.format(d);
    54         System.out.println("FULL类型时间:" + time43);
    55         System.out.println("SHORT类型时间:" + time44);
    56         System.out.println("MEDIUM类型时间:" + time45);
    57 
    58         // 日历
    59         Calendar time = Calendar.getInstance();
    60         int year = time.get(Calendar.YEAR);
    61         int month = time.get(Calendar.MONTH);
    62         int day = time.get(Calendar.DAY_OF_MONTH);
    63         int week = time.get(Calendar.DAY_OF_WEEK);
    64         int hour = time.get(Calendar.HOUR);
    65         System.out.println("当前时间是:" + year + "年" + month + "月" + day + "日,星期" + week + "," + hour + "点");
    66     }
    67 }
    1 当前日期对象转换成毫秒值:1504089815431       Calendar类日期转换成毫秒值:1504089815441
    2 日期字符串转换成日期对象:Thu Jan 12 00:00:00 CST 2017
    3 日期字符串转换成日期格式:2009-06-12 02:06:37
    4 日期对象转换成日期字符串:2017/08/30
    5 getDateInstance时间:2017年8月30日    getDateTimeInstance时间:2017年8月30日 下午06时43分35秒
    6 FULL类型时间:2017年8月30日 星期三
    7 SHORT类型时间:17-8-30
    8 MEDIUM类型时间:2017-8-30
    9 当前时间是:2017年7月30日,星期4,6点
  • 相关阅读:
    ModelState 错误信息输出
    c# 导入导出excel方法封装
    签名时出错: 未在路径 C:Program Files (x86)Microsoft SDKsWindowsv7.0Ain
    win 10 升级远程连接服务器 要求的函数不受支持
    请求被中止: 未能创建 SSL/TLS 安全通道
    访问iis 出现500.19错误
    ubuntu下交叉编译海思平台下的x264/x265
    C++编程规范
    C++入门--菱形继承与虚继承
    C++入门 --- 纯虚函数与抽象类
  • 原文地址:https://www.cnblogs.com/whx20100101/p/7454784.html
Copyright © 2011-2022 走看看