欢迎访问宙启技术站
智能推送

Java日期函数汇总:getYear、getMonth、getDayOfWeek等常用函数全解析

发布时间:2023-06-21 20:47:35

Java中的日期处理是非常常见的需求,比如将日期格式化输出,获取指定日期所对应的星期几等等。下面将介绍几个常见的日期函数,包括getYear、getMonth、getDayOfWeek等函数。

1. getYear()函数

getYear()函数用于获取指定日期的年份。这个函数返回值是一个int类型的数字,表示指定日期对应的年份。注意,这个返回值是相对于1900年的偏移量。

示例代码:

import java.util.Date;

public class Main {
    public static void main(String[] args) {
        Date date = new Date();
        int year = date.getYear() + 1900;
        System.out.println("当前时间的年份是:" + year);
    }
}

执行上面代码,输出结果如下:

当前时间的年份是:2022

2. getMonth()函数

getMonth()函数用于获取指定日期的月份。这个函数返回值也是一个int类型的数字,表示指定日期对应的月份。注意,这个月份是以0开始计算,即0表示1月,1表示2月,以此类推。

示例代码:

import java.util.Date;

public class Main {
    public static void main(String[] args) {
        Date date = new Date();
        int month = date.getMonth();
        System.out.println("当前时间的月份是:" + (month + 1) + "月");
    }
}

执行上面代码,输出结果如下:

当前时间的月份是:10月

3. getDayOfWeek()函数

getDayOfWeek()函数用于获取指定日期所对应的星期几。这个函数返回值也是一个int类型的数字,表示指定日期所对应的星期几。注意,这个星期几是以0开始计算,即0表示星期日,1表示星期一,以此类推。

示例代码:

import java.util.Date;

public class Main {
    public static void main(String[] args) {
        Date date = new Date();
        int dayOfWeek = date.getDay();
        System.out.println("今天是星期" + (dayOfWeek == 0 ? 7 : dayOfWeek));
    }
}

执行上面代码,输出结果如下:

今天是星期2

4. getTime()函数

getTime()函数用于获取指定日期的时间戳。这个函数返回值是一个long类型的数字,表示指定日期距离1970年1月1日00:00:00 GMT所经过的毫秒数。

示例代码:

import java.util.Date;

public class Main {
    public static void main(String[] args) {
        Date date = new Date();
        long time = date.getTime();
        System.out.println("当前时间距离1970年1月1日00:00:00 GMT已经过去了" + time + "毫秒");
    }
}

执行上面代码,输出结果如下:

当前时间距离1970年1月1日00:00:00 GMT已经过去了1669258517105毫秒

5. before()和after()函数

before()函数和after()函数用于比较两个日期的先后顺序。这两个函数都需要传入一个Date类型的参数,如果当前日期在这个参数日期之前,before()函数返回true,否则返回false;如果当前日期在这个参数日期之后,after()函数返回true,否则返回false。

示例代码:

import java.util.Date;

public class Main {
    public static void main(String[] args) {
        Date date1 = new Date();
        Date date2 = new Date(date1.getTime() + 10000); // date2比date1晚10秒
        System.out.println("date1在date2之前?" + date1.before(date2));
        System.out.println("date1在date2之后?" + date1.after(date2));
    }
}

执行上面代码,输出结果如下:

date1在date2之前?true
date1在date2之后?false

以上就是一些常用的Java日期函数的介绍,这些函数可以帮助我们在Java程序中方便地处理日期和时间。