Java日期时间相关的类

Date类
(1)基本概念
java.util.Date类用于描述特定的瞬间,可以精确到毫秒,通常描述年月日时分秒信息。

(2)常用的方法
Date() - 无参方式构造对象,默认使用当前系统时间来初始化该对象。
Date(long date) - 根据参数指定的毫秒数来构造对象。
- 参数为距离1970年1月1日0时0分0秒的毫秒数,1秒=1000毫秒 1毫秒=1000微秒
- 该方法与File类中的方法搭配使用很方便。

long getTime() - 用于获取调用对象距离1970年1月1日0时0分0秒的毫秒数。
void setTime(long time) - 根据参数指定的毫秒数来调整调用对象描述的时间。

import java.util.Date;
public class TestDate {
    public static void main(String[] args) {
        //1.使用无参的方式构造对象
        Date dl = new Date();
        System.out.println("dl = " + dl); //自动调用toString()系统时间

        //2.使用有参的方式构造对象
        Date d2 = new Date(1000);
        System.out.println("d2 = " + d2); //1970年1月1日 08:00:01

        System.out.println("-------------------------");
        //3.使用有参的过时构造方法,来传入年月日时分秒
        //Date d3 = new Date(2008-1900,8-1,8,20,8,8);
        //System.out.println("d3 = " + d3);

        System.out.println("-------------------------");
        //使用getTime()方法和setTime()方法
        long msec = dl.getTime();
        System.out.println("当前系统时间距离1970年1月1日0时0分0秒的毫秒数:"+msec);

        Date d4 = new Date(msec);
        System.out.println("d4 = " + d4);

        d2.setTime(2000);
        System.out.println("d2 = " + d2);
    }
}

SimpleDateFormat类
(1)基本概念
java.text.SimpleDateFormat类用于实现Date类型和String类型之间的转换,调整日期格式

(2)常用的方法
SimpleDateFormat(String pattern) - 根据参数指定的格式来构造对象。
- 参数字符串中格式有:y-年 M-月 d-日 H-时 m-分 s-秒
String format(Date date) - 用于将Date类型转换为String类型并返回。
Date parse(String source) - 用于将String类型转换为Date类型并返回

import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;

public class TestSimpleDateFomat {

    public static void main(String[] args) throws ParseException  {

        //1.按照默认方式打印日期
        Date dl = new Date();
        System.out.println("dl = " + dl); //打印默认日期格式

        //2.按照指定的格式来打印日期
        //SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
        SimpleDateFormat sdf = new SimpleDateFormat("yyyy年MM月dd日 HH时mm分ss秒");

        //实现将dl的数值按照sdf中的格式来转换为String类型
        String str = sdf.format(dl);
        System.out.println(str);

        //实现将str的数值按照sdf的格式转换为Date类型
        Date d2 = sdf.parse(str);
        System.out.println("d2 = " + d2);
    }

}

Calendar类
(1)基本概念
java.util.Calendar类用于取代Date类中某些方法来描述年月日时分秒等信息。

(2)常用的方法
static Calendar getInstance() - 用于返回Calendar类型的对象。
void set(int year, int month, int date, int hourOfDay, int minute, int second)
- 将当前调用对象中的日期信息设置为参数指定的内容。
- 传入的月份要减1.
Date getTime() - 用于将Calendar类型转换为Date类型。

import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;

public class TestCalendar {

    public static void main(String[] args) {

        //1.使用过时的构造方法可以传入年月日时分秒信息
        Date dl = new Date(2008-1990, 8-1,8,20,8,8);
        System.out.println("dl = " + dl);

        System.out.println("---------------------");
        //2.使用现在的方式传入年月日时分秒信息
        //2.1 获取Calendar类型的对象
        Calendar cl = Calendar.getInstance();
        //2.2 设置年月日时分秒信息
        cl.set(2008, 8-1,8,20,8,8);
        //2.3 转换为Date类型的对象
        Date d2 = cl.getTime();
        System.out.println("d2 = " + d2);

        System.out.println("----------------------");

        //3.按照中国人的习惯打印日期信息
        SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
        String str = sdf.format(d2);
        System.out.println(str);

    }

}
  • 1
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值