JAVA常见类(十二)Calendar类
大家好,又见面了,我是你们的朋友全栈君。
Calendar类
Calendar:它为特定瞬间与一组诸如 YEAR、MONTH、DAY_OF_MONTH、HOUR 等日历字段之间的转换提供了一些方法,并为操作日历字段(例如获得下星期的日期)提供了一些方法。
一、构造方法
protected Calendar() :由于修饰符是protected,所以无法直接创建该对象。需要通过别的途径生成该对象。
二、成员方法
static Calendar getInstance() | 使用默认时区和区域设置获取日历。通过该方法生成Calendar对象。如下所示:Calendar cr=Calendar.getInstance(); |
---|---|
public void set(int year,int month,int date,int hourofday,int minute,int second) | 设置日历的年、月、日、时、分、秒。 |
public int get(int field) | 返回给定日历字段的值。所谓字段就是年、月、日等等。 |
public void setTime(Date date) | 使用给定的Date设置此日历的时间。Date——Calendar |
public Date getTime() | 返回一个Date表示此日历的时间。Calendar—–Date |
abstract void add(int field,int amount) | 按照日历的规则,给指定字段添加或减少时间量。 |
public long getTimeInMillies() | 以毫秒为单位返回该日历的时间值。 |
三、日历字段
日历字段包含以下两种:一种是表示时间的单位,例如年、月、日等等。另一种是具体的日期,例如一月、二月、三月、一日、二日、三日、一点钟、两点钟等等具体的时间。前一种一般时获取的时候使用,后一种一般判断的时候使用。
时间单位字段:
YEAR | 年 | MINUTE | 分 | DAY_OF_WEEK_IN_MONTH | 某月中第几周 |
---|---|---|---|---|---|
MONTH | 月 | SECOND/MILLISECOND | 秒/毫秒 | WEEK_OF_MONTH | 日历式的第几周 |
DATE | 日 | DAY_OF_MONTH | 和DATE一样 | DAY_OF_YEAR | 一年的第多少天 |
HOUR_OF_DAY | 时 | DAY_OF_WEEK | 周几 | WEEK_OF_YEAR | 一年的第多少周 |
具体时间字段:这里就不累赘了,从一月到十二月、从周一到周五
特殊的:AM_PM 返回1则表示是下午,返回0表示上午。
四、例子
public class CalendarDemo {
public static void main(String[] args) {
// 其日历字段已由当前日期和时间初始化:
Calendar rightNow = Calendar.getInstance(); // 子类对象
// 获取年
int year = rightNow.get(Calendar.YEAR);
// 获取月
int month = rightNow.get(Calendar.MONTH);
// 获取日
int date = rightNow.get(Calendar.DATE);
//获取几点
int hour=rightNow.get(Calendar.HOUR_OF_DAY);
//获取上午下午
int moa=rightNow.get(Calendar.AM_PM);
if(moa==1)
System.out.println("下午");
else
System.out.println("上午");
System.out.println(year + "年" + (month + 1) + "月" + date + "日"+hour+"时");
rightNow.add(Calendar.YEAR,5);
rightNow.add(Calendar.DATE, -10);
int year1 = rightNow.get(Calendar.YEAR);
int date1 = rightNow.get(Calendar.DATE);
System.out.println(year1 + "年" + (month + 1) + "月" + date1 + "日"+hour+"时");
}
}
注意:month是从0开始的,而月份是从1开始的,所以month需要加一。
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/190132.html原文链接:https://javaforall.cn
相关文章
- Java进阶(二十三)java中long类型转换为int类型
- java分层打印二叉树_基于Java的二叉树层序遍历打印实现
- java中scanner意思_Java中的Scanner
- java pfx 证书_Java将pfx证书转换为jks[通俗易懂]
- java启动器_JAVA基础:Java 启动器如何查找类
- java开发常用四大框架_Java 后台开发框架[通俗易懂]
- java高级工程师_一名Java高级工程师需要学什么?
- java无法获取服务器上路径,JAVA获取服务器路径的步骤
- Java类的初始化顺序_java静态类初始化顺序
- java executeupdate_Java自学-JDBC execute与executeUpdate的区别
- java中的异或运算符_java按位异或
- 【愚公系列】2023年04月 Java教学课程 129-Redis的集群
- java.util.ConcurrentHashMap (JDK 1.8)详解编程语言
- java集合框架容器 java框架层级 继承图结构 集合框架的抽象类 集合框架主要实现类详解编程语言
- 开发开创Linux更美好的Java开发环境(linux集成java)
- 解锁Java 与 Oracle 的连接之门(java连接oracle)
- 极速搭建Java连接SqlServer数据库(java连接sqlserver)
- 时间处理Java处理Redis过期时间的方法(redisjava过期)
- 机制Redis Java 过期机制: 优化缓存管理(redisjava过期)
- Java与MySQL:转义字符的使用技巧(javamysql转义)
- 使用Java连接SQL Server数据库,快速高效地管理数据(java连接sqlserver数据库)
- 如何在Linux中停止运行Java程序(linux停止java)
- 基于Java字符编码的使用详解
- Java读写文件创建文件夹多种方法示例详解
- Java中ArrayList类的使用方法
- java实现八皇后问题示例分享