JavaDate类

已经对该文章进行更清晰的解析,详情见博客中:Java:常用API接上篇  --黑马笔记

Date 类提供两个构造函数来实例化 Date 对象。

第一个构造函数使用当前日期和时间来初始化对象。 

Date( )

第二个构造函数接收一个参数,该参数是从 1970 年 1 月 1 日起的毫秒数。

Date(long millisec)

Date类使用:

 Date date = new Date();


 System.out.println(date.toString());//Tue Jan 16 10:24:26 CST 2024

使用 SimpleDateFormat 格式化日期

SimpleDateFormat 是一个以语言环境敏感的方式来格式化和分析日期的类。SimpleDateFormat 允许你选择任何用户自定义日期时间格式来运行。

示例:

Date date = new Date();
System.out.println(date.toString());//Tue Jan 16 10:24:26 CST 2024


SimpleDateFormat ft = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");
System.out.println("当前时间:"+ft.format(date));

运行结果:

日期比较:

compareTo方法

compareTo方法返回一个整数值,表示两个日期的比较结果。如果返回值小于0,则表示date1在date2之前;如果返回值大于0,则表示date1在date2之后;如果返回值等于0,则表示两个日期相等。

示例:

package com.itheima.date;

import java.util.Date;

public class Demo02 {
    public static void main(String[] args) {
        Date date01 = new Date();
        Date date02 = new Date();
        int type = date01.compareTo(date02);//输出:date01和date02相等
        if (type < 0) {
            System.out.println("date01在date02之前");
        } else if (type > 0) {
            System.out.println("date01在date02之后");
        } else {
            System.out.println("date01和date02相等");
        }
    }
}

before(),after()

讲解:before()就是date1在date2之前,而after()就是date1在date2之后。

示例:

package com.itheima.date;

import java.util.Date;

public class Demo03 {
    public static void main(String[] args) {
        Date date01 = new Date();
        Date date02 = new Date();

        if (date01.before(date02)) {
            System.out.println("date01在date02之前");
        } else if (date01.after(date02)) {
            System.out.println("date01在date02之后");
        } else {
            System.out.println("date01和date02相等");
        }
    //输出:date01和date02相等
    }
}

转换成时间戳(毫秒)

Date类方法:

long getTime( )
返回自 1970 年 1 月 1 日 00:00:00 GMT 以来此 Date 对象表示的毫秒数。

示例:

package com.itheima.date;

import java.util.Date;

public class Demo04 {
    public static void main(String[] args) {
        Date date01 = new Date();
        Date date02 = new Date();
        long  date01Cur=date01.getTime(); //转为时间戳
        long  date02Cur=date02.getTime();
        if (date01Cur>date02Cur) {
            System.out.println("date01在date02之后");
        } else if (date02Cur>date01Cur) {
            System.out.println("date02在date01之后");
        } else {
            System.out.println("date01和date02相等");
        }
        //输出:date01和date02相等
    }
}

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值