Date类(Date、SimpleDateFormat和Calendar)使用

1.     Date类与long数据类型的转型

2.     SimpleDateFormat类的使用

3.     Calendar类的使用

如果要操作日期一定要使用日期的处理类。


1、Java.util.Date类

范例:

package com.lohas.demo.date;

import java.util.Date;

public class TestDateDemo {

    public static voidmain(String[] args) {

        Date date = newDate();

       System.out.println(date);

    }

执行结果:

Sat Apr 21 09:27:13 CST 2018

 

虽然Date类的对象可以取得当前的日期时间,但是结果,这个日期的可读性不适合中国人。

一直强调,日期时间=long数据内容。这一点Date类上很好体现

        .构造方法:public Date(long date)
        .Datelong型返回:public long getTime()
范例:转换
package com.lohas.demo.date;
import java.util.Date;
public class TestDateDemo {
    public static void main(String[] args) {
        Date date = new Date();//Date对象
        long num = date.getTime();//Datelong数据返回
        System.out.println(num);
        System.out.println(new Date(num * 2));//long >> Date
    }
}

运行结果:

1524274758394

Mon Aug 0911:18:36 CST 2066

 

在实际的使用过程之中,很少会出现这样的转换,但是至少你的头脑中应该清楚,long与Date可以互相转换。

 

2、日期格式化:SimpleDateFormat

Date虽然可以直接进行日期时间的取得,但是大部分情况这样的日期时间取得并不好用,因为它给出的日期时间格式我们很多人看不懂。所以在java中考虑到了日期的显示格式要求。那么往往最终都会按照String进行显示。

如果要想实现这样的格式化操作,可以使用java.text.SimpleDateFormat类完成。

java.lang.Object

 java.text.Format

  java.text.DateFormat

   java.text.SimpleDateFormat

        .构造方法:public SimpleDateFormat(String pattern)

--格式化标记:年(yyyy)、月(MM)、日(dd)、时(HH)、分(mm)、秒(ss)、毫秒(SSS)

         .将日期格式化为字符串:
                       publicfinal String format(Date date)

        .将字符串变为日期:

                public Date parse(String source)throws ParseException

 

范例:将日期格式化为字符串

package com.lohas.demo.date;

import java.text.ParseException;

import java.text.SimpleDateFormat;

import java.util.Date;

public class SimpleDateFormatDemo {

    public static voidmain(String[] args) {

        Date date = newDate();

       System.out.println("当前日期: " + date);

        SimpleDateFormat sdf =new SimpleDateFormat("yyyy-MM-dd HH:mm:ss:SSS");

        String str =sdf.format(date);//将日期格式化字符串

       System.out.println("Date==>>String: " + str);

        Date date1 = null;

        try {

             date1 =sdf.parse(str);将字符串格式化日期

        } catch(ParseException e) {

           e.printStackTrace();

        }

       System.out.println("String==>>date: " + date1);

    }

}

 

总结:现在为止String、基本类型、Date已经实现了彻底的转换贯通;

String变为基本类型:包装类

基本类型变为String:  String.ValueOf()

Date与String转换: SimpleDateFormat

 

3、Calendar类

Calendar主要的功能是可以进行日期时间的拼凑使用,。Calendar本身是一个抽象类,但是现在可以直接利用这个类中提供的static方法进行实例化对象的取得:
public static Calendar getInstance()
随后可以利用Calendar类中的一个方法取得指定的日期时间数据:                public int get(int field)
该方法需要使用一些特定的常量。
package com.lohas.demo.date;
import java.util.Calendar;
public class CalendarDemo {
    public static void main(String[] args) {
        //取得Calendar类的实例化对象
        Calendar calendar = Calendar.getInstance();
        StringBuffer sb = new StringBuffer();
        sb.append(calendar.get(Calendar.YEAR)).append("");
        sb.append(calendar.get(Calendar.MONTH) + 1).append("");
        sb.append(calendar.get(Calendar.DAY_OF_MONTH)).append("");
        sb.append(calendar.get(Calendar.HOUR_OF_DAY)).append("");
        sb.append(calendar.get(Calendar.MINUTE)).append("");
        sb.append(calendar.get(Calendar.SECOND)).append("");
        System.out.println(sb);
    }
}
运行结果:201842111130
使用Calendar的好处是可以方便计算出日期或时间之间的间隔。

总结:

java.util.Date代表的就是日期时间
SimpleDateFormat可以实现字符串与日期间的转换操作
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值