(36)java基础语法 --工具类和常用类 --Calendar类

目录

Calendar类

1、Calendar对象的创建

2、Calendar的常用方法


Calendar类

java.util.Calendar

 

Calendar类是与日历相关的一个类。由于Date类在设计上的一些缺陷,所以java提供了Calendar类来更好的处理时间和日期。Calendar是一个抽象类,表示日历,不能直接实例化,通常使用getInstance() 方法来获取实例。

Calendar类的对象也表示一个时间点,可以精确到毫秒,可以在当前时间上向前推 几年,几月,几天,几小时等,可以在当前时间上向后推 几年,几月,几天,几小时等。

欧美与中国的日期不一样

      中国:1月~12月            欧美:0月~11月

      中国: 周一 ~ 周日        欧美: 周日 ~ 周六

1、Calendar对象的创建

Calendar类是一个抽象类,可以调用如下方法得到它子类的实例对象

      Calendar c = Calendar.getInstance();      可以通过c访问Calendar类中定义的属性和方法

2、Calendar的常用方法

getTime()            返回Date类型时间
setTime(Date date)  设置时间到日历中
get(Calendar.YEAR/MONTH/DATE) 获取年份、月份、日
set(2015,11,11,12,11,10) 设置时间到日历中,月份从0到11
add(Calendar.YEAR/MONTH/DATE,2) 在一个日期的年,月,日上添加对应的值

getTime() 使用

Calendar calendar = Calendar.getInstance(); // 系统当前时间
Date date = calendar.getTime(); // 返回Date类型时间
System.out.println(date);
控制台结果:

Sun Jan 31 11:49:22 CST 2021

setTime(Date date) 使用

Calendar calendar = Calendar.getInstance(); // 系统当前时间
calendar.setTime(DateUtil.strToDate("2017-02-23","yyyy-MM-dd"));
System.out.println(calendar.getTime());
控制台结果:

Thu Feb 23 00:00:00 CST 2017

get(Calendar.YEAR/MONTH/DATE) 使用

Calendar calendar = Calendar.getInstance(); // 系统当前时间
int year = calendar.get(Calendar.YEAR);
int month = calendar.get(Calendar.MONTH); // 月份从0开始
int date = calendar.get(Calendar.DATE);
int hour = calendar.get(Calendar.HOUR);
int minute = calendar.get(Calendar.MINUTE);
int second = calendar.get(Calendar.SECOND);
int day = calendar.get(Calendar.DAY_OF_WEEK);  //获得的是这个星期的第几天  星期日是第一天
System.out.println(year+"-"+(month+1)+"-"+date+" "+hour+":"+minute+":"+second+" 星期"+(day-1));
控制台结果:

2021-1-31 0:2:35 星期0

set(2015,11,11,12,11,10) 使用

Calendar calendar = Calendar.getInstance(); // 系统当前时间
calendar.set(2019,9,20,11,11,11);
System.out.println(calendar.getTime());
控制台结果:

Sun Oct 20 11:11:11 CST 2019

add(Calendar.YEAR/MONTH/DATE,2) 使用

Calendar calendar = Calendar.getInstance(); // 系统当前时间
calendar.add(Calendar.DATE,25);
System.out.println(calendar.getTime());

calendar.add(Calendar.MONTH, 13);
System.out.println(calendar.getTime());
控制台结果:

Thu Feb 25 12:09:50 CST 2021
Fri Mar 25 12:09:50 CST 2022

上一篇:(35)java基础语法 --工具类和常用类 --SimpleDateFormat类

下一篇:(37)Java基础 --工具类和常用类 --BigDecimal类

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值