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

Java中的日期时间处理函数:Date和Calendar的使用方法

发布时间:2023-06-17 08:30:34

1. Date类

Date类是Java中最常用的表示日期和时间的类之一,它表示一个特定的瞬间,从1970年1月1日午夜开始,经过了指定的毫秒数。使用Date类可以获取当前日期和时间,或者可以通过传递一个long型的参数来表示一个过去或未来的日期和时间,下面是一些常用的方法:

(1)构造方法:

a. 默认构造方法:Date();

b. 参数为long型的构造方法:Date(long date);

(2)获取日期和时间的方法:

a. 获取当前日期和时间:Date date = new Date();

b. 获取毫秒数:date.getTime();

c. 获取年份:date.getYear();

d. 获取月份:date.getMonth();

e. 获取日期:date.getDate();

f. 获取小时:date.getHours();

g. 获取分钟:date.getMinutes();

h. 获取秒钟:date.getSeconds();

i. 获取星期几:date.getDay();(返回值为0-6,0表示星期日,1表示星期一,以此类推)

(3)toString方法:

a. 将Date对象转换为字符串表示,格式依赖于当前本地时间显示:date.toString()。

2. Calendar类

Calendar类是Java中另一个非常常用的日期和时间处理类,它支持十分灵活的日期和时间处理,允许对日期和时间进行各种操作,例如添加月份、天数、小时和分钟等等。下面是一些常用的方法:

(1)获取实例:

a. 使用getInstance()方法获取当前时区的Calendar对象:Calendar cal = Calendar.getInstance();

b. 使用getDefault()方法获取当前用户的默认时区的Calendar对象:Calendar cal = Calendar.getDefault();

(2)设置日期和时间:

a. 设定年份:cal.set(Calendar.YEAR, year);

b. 设定月份:cal.set(Calendar.MONTH, month);

c. 设定日期:cal.set(Calendar.DATE, date);

d. 设定小时:cal.set(Calendar.HOUR_OF_DAY, hour);

e. 设定分钟:cal.set(Calendar.MINUTE, minute);

f. 设定秒钟:cal.set(Calendar.SECOND, second);

(3)获取日期和时间:

a. 获取年份:cal.get(Calendar.YEAR);

b. 获取月份:cal.get(Calendar.MONTH);

c. 获取日期:cal.get(Calendar.DATE);

d. 获取小时:cal.get(Calendar.HOUR_OF_DAY);

e. 获取分钟:cal.get(Calendar.MINUTE);

f. 获取秒钟:cal.get(Calendar.SECOND);

g. 获取当前月份的天数:cal.getActualMaximum(Calendar.DAY_OF_MONTH);

(4)其他方法:

a. add方法:在已有时间上添加一段时间,使用象征性的常量表示添加的时间段。cal.add(Calendar.DATE, 10)表示在当前日期上添加10天。

b. roll方法:在已有时间上添加一段时间,与add方法不同的是,它不会跨越年份或月份。cal.roll(Calendar.DATE, 10)表示在当前日期上添加10天,但如果当前月份的天数不足10天,则不跨越月份;如果当前是12月31日,加上10天后就会变成1月10日,而不是跨越到了下一年的1月10日。

c. getTime方法:返回一个Date对象,表示当前Calendar对象所代表的时间。Date date = cal.getTime();

d. getDisplayName方法:获取某个时间字段的表示名称。cal.getDisplayName(Calendar.MONTH, Calendar.LONG, Locale.ENGLISH)返回的是表示月份的英文名,例如“January”。

以上是关于Java中的日期时间处理函数Date和Calendar的使用方法的一些简单介绍,希望能够帮助大家更好地理解和使用这两个类。