关于时间的类 Calendar类

时间类Calendar类操作 创建和管理日历时间 Java Calendar 类时间操作,这也许是创建和管理日历最简单的一个方案,示范代码很简单。 本文经网络整理而成,演示了获取时间,日期时间的累加和累减,以及比较。只有多加尝试,才会获得更多的收获! 原文地址:blog.youkuaiyun.com/joyous/article/details/9630893 注意事项: Calendar 的 month 从 0 开始,也就是全年 12 个月由 0 ~ 11 阅读详情

1 前言: Calendar类和Date类都是解决时间相关问题的,在使用过程中也存在相同之处和不同之处,这次我们主要说说Calendar类
1.1简单介绍:它为特定瞬间与一组诸如 YEAR、MONTH、DAY_OF_MONTH、HOUR 等日历字段之间的转换提供了一些方法,并为操作日历字段(例如获得下星期的日期)提供了一些方法。

2相关api

方法说明
static Calendar getInstance()使用默认时区和区域设置获取日历。通过该方法生成Calendar对象。如下所示:Calendar cr=Calendar.getInstance();这是操作其他api的前提
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 getTimeInMillis()以毫秒为单位返回该日历的时间值。

2.1一般作为上面方法的参数的api

枚举名说明
YEAR年
MONTH月
DATE日
HOUR_OF_DAY时
MINUTE分
SECOND/MILLISECOND秒
DAY_OF_MONTH和DATE一样
DAY_OF_WEEK周几
DAY_OF_WEEK_IN_MONTH某月中第几周
WEEK_OF_MONTH日历式的第几周
DAY_OF_YEAR一年的第多少天
WEEK_OF_YEAR一年的第多少周
AM_PM返回1则表示是下午,返回0表示上午
。。。。从一月到十二月、从周一到周五

3 代码举例

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+"时");
		//输出   2020年8月19日16时
		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+"时");
		//输出   2025年8月9日16时
	}
}
  • 注意:month是从0开始的,而月份是从1开始的,所以month需要加1。

3.1获取时间一个时间段的Util

/**
     * 获取时间戳
     *
     * @param day
     * @param b   true 0点 false 23点59
     * @return
     * alendar1.get(Calendar.DAY_OF_MONTH) - day,当day大于 alendar1.get(Calendar.DAY_OF_MONTH)
     * 的时候就会到上一个月,比如:2025年8月9日16时-10日=2025年7月30日16时
     * 
     */
    public Long getTime(Integer day, Boolean b) {
        Calendar calendar1 = Calendar.getInstance();
        if (b) {
            calendar1.set(calendar1.get(Calendar.YEAR), calendar1.get(Calendar.MONTH), calendar1.get(Calendar.DAY_OF_MONTH) - day,
                    0, 0, 0);
        } else {
            calendar1.set(calendar1.get(Calendar.YEAR), calendar1.get(Calendar.MONTH), calendar1.get(Calendar.DAY_OF_MONTH) - day,
                    23, 59, 59);
        }
        Long time = calendar1.getTime().getTime();
        return time;
    }
  • 完结
Gromacs实战:从蛋白质-小分子对接到分子动力学模拟全流程解析 本文详细解析了使用Gromacs进行蛋白质-小分子对接和分子动力学模拟的全流程,包括文件准备、拓扑生成、复合物构建、溶剂化处理、能量最小化及平衡模拟等关键步骤。通过实战案例,帮助研究者验证药物分子与靶标蛋白的结合稳定性,提升分子动力学模拟的效率和准确性。 阅读详情

相关推荐

从零开始玩转Franka Panda机器人

本文总结了笔者在学习使用Franka Panda机器人时的一些方法和经验总结。

止于至玄 1万+

Calendar类

目录一、Calendar 类概述二、Calendar类的构造方法三、Caleadar类的基本使用四、Calendar的常用方法1.public abstract void add(int filed,int amount)2.public final void set(int year,int month,int date) 一、Calendar 类概述 Calendar常常被称为日历类 可以看出Calender是一个抽象类 它有很多日历字段,而且都是用静态修饰的 二、Calendar类的构造方法

weixin_49053303的博客 2714

scratch lenet(4): 开根号的C语言实现

使用C语言,分别使用二分法、牛顿法、卡马克快速法,求解正实数的开根号。包括公式推导、代码实现、运行结果,不使用任何第三方库和C标准库的数学库。

baiyu33的博客 4969

Java学习笔记——Calendar类

Java中的日期类主要包括:Date类和Calendar类,本文中将对Calendar类进行讲解。 一、Calendar类的简介 Calendar类是一个抽象类,在实际使用时实现特定的子类的对象,只需要使用getInstance方法创建即可。 二、Calendar类中的常用字段 YEAR 年份 MONTH 月份 DATE 日期 WEEK_OF_YEAR 当前年中的第几个星期 WEEK_OF_MONTH 当前月中的第几个星期 DAY_OF_YEAR 一年中的第几天 DAY_OF_MON

D77的博客 7720

基于Python API的ECMWF大气数据批量下载与自动化处理实践

本文详细介绍了如何利用Python API实现ECMWF大气数据的自动化批量下载与处理。针对遥感分析中手动下载ERA5等数据的痛点,文章提供了从API密钥配置、核心脚本编写到元数据解析、任务队列调度及数据质量检查的全流程实践指南,旨在帮助科研与工程人员高效获取并处理大规模气象数据。

u8v9w0x1y的博客 479

[Linux项目实践] LCD Panel的硬件分析及调试

LCD硬件分析 项目使用3.5” TFT-LCD并且支持触摸控制。LCD的硬件可从几个方面学习:1)查看LCD的硬件连线。2)查看数据手册了解寄存器的控制。3)查看LCD DATASHEET了解硬件操作 1)LCD硬件连线 在图中有33个引脚,22根数据引脚和9根控制引脚。 LCD的工作原理:像素点是从左至右,从上至下逐个显示,LCD控制寄存器会从从内存中的framebuffer通

Terry_Yuan的技术专栏 3023

java基础--Calendar类

Calendar类也叫日历类,它是java.util包下的一个抽象类不可以通过new去创建该类的对象。用于处理日期和时间的类,它提供了一系列静态方法和实例方法来获取、设置和操作日期和时间。Calendar类定义了一个抽象基类,它的子类包括GregorianCalendar、JapaneseCalendar等,还有一些常用字段(日历字段:YEAYR、MONTH、DATE DAY_OF_MONTH、HOUR)。

m0_65368672的博客 3230

gesp c++ 八级知识点

gesp c++ 八级知识点

MMD.然大大 2237

JavaSE基础之-Calendar时间类

本篇目录:一:Calendar类二.常用方法 一:Calendar类 Calendar来源于Java.util包下 Calendar是一个抽象类(抽象类不能实例化) Calendar通过Calendar.getInstance()获得 Calendar rightNow = Calendar.getInstance(); 二.常用方法

孤夜的博客 2343

不止于使能:用汇川PLC功能块封装,实现伺服轴状态管理与安全逻辑

本文深入探讨了汇川PLC功能块封装在伺服轴控中的应用,详细介绍了如何通过高级封装技术实现伺服轴的状态管理与安全逻辑。文章涵盖了从基础使能到全生命周期监控的进化,多轴协同的实例化管理策略,以及安全逻辑的防御性编程技巧,为工业自动化领域的工程师提供了实用的解决方案和最佳实践。

weixin_28684825的博客 271

【为K8s的coredns配置上游DNS服务器】

为K8s的coredns配置上游DNS服务器一、背景描述二、如何修改coredns达到目的三、修改coredns 解析指定域名走指定dns①、get coredns configmap②、修改coredns configmap③、查询现有coredns pod并逐个重启④、验证解析是否正确 一、背景描述 有一个项目需要部署到客户内网,并通过nat映射实现外网访问! 项目中有多个服务之间调用是走的外网域名,项目采用k8s集群容器部署,客户的网络情况导致服务之间通过外网域名互调时总是 connection ti

那个那个 6670

Calendar类获取当前时间方法

除了获取时间用Date和SimperFormat,还可用Calendar类方法获取时间  (一)  Calendar类,是一个抽象类  * 在java.util包中,  * 步骤1:通过调用getInstance()静态方法获得一个Calendar对象,此对象已由当前日期时间初始化,即默认代表当前时间 * 步骤2:该对象调用get()方法获得日期时间信息,参数为需要获取的字段值,,用i

FixedStar 的博客 2万+

DSP篇--C6678功能调试系列之EDMA3调试

EDMA主要用于数据的搬运,发送、接收,其搬运数据的形式有;AB模式,ABC模式以及ping-pong模式。 EDMA3分初始化、参数配置、以及中断配置。其中中断配置则需要注意的内容主要有:挂载的TC通道,对应的触发事件,以及中断的使能。

nanke_yh的博客 1720

Calendar类、输出当前时间

java.util 类 Calendar java.lang.Object java.util.Calendar public abstract class Calendar // 抽象类,不能直接实例化extends Objectimplements Serializable, Cloneable, ComparableCalendar> 一、Calendar

lpp1234567的专栏 3024

Camera2Demo

在Camera2 的基础上进行封装,使得Camera2一堆初始化逻辑与Activity分离,降低耦合度,完成预览拍照并保存的操作

OV9734 DATASHEET,完整规格书

OV9734完整规格书,包括电气参数,尺寸规格,寄存器配置表等

java calendar timem_Java Calendar类的时间操作

Java Calendar 类时间操作,这也许是创建日历和管理最简单的一个方案,示范代码很简单,演示了获取时间,日期时间的累加和累减,以及比较。注意事项:Calendar 的 month 从 0 开始,也就是全年 12 个月由 0 ~ 11 进行表示。而 Calendar.DAY_OF_WEEK 定义和值如下:Calendar.SUNDAY = 1Calendar.MONDAY = 2Calend...

weixin_33196555的博客 352

RU DOS版、EFI版32bit/64bit BIOS常用工具

DOS版、EFI版的RU工具,可用来查看IO、MEM、PCI、SMBIOS等资源。亲测在EFI SHELL下可用。

Calendar类延长收货时间

先简单介绍一下 Calendar类 Calendar类 Calendar类是java util包下的一个工具类,提供了很多便捷的不同日期格式的处理 Calendar类成员方法 static Calendar getInstance() 使用默认时区和区域设置获取日历。通过该方法生成Calendar对象。如下所示:Calendar cr=Calendar.getInstance(); public void set(int year,int month,int date,int hourofday,i

weixin_45511148的博客 216

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

java calendar 设置小时_Java Calendar类的时间操作

Java Calendar 类时间操作,这也许是创建日历和管理最简单的一个方案,示范代码很简单,演示了获取时间,日期时间的累加和累减,以及比较。注意事项:Calendar 的 month 从 0 开始,也就是全年 12 个月由 0 ~ 11 进行表示。而 Calendar.DAY_OF_WEEK 定义和值如下:Calendar.SUNDAY = 1Calendar.MONDAY = 2Calend...

weixin_30419031的博客 3185

calendar当前时间整点_时间处理相关类

时间处理相关类在计算机世界,我们把1970 年 1 月 1 日 00:00:00定为基准时间,每个度量单位是毫秒(1秒的千分之一)。时间相关类有如下Date时间类(java.util.Date)在标准Java类库中包含一个Date类。它的对象表示一个特定的瞬间,精确到毫秒。 Date() 分配一个Date对象,并初始化此对象为系统当前的日期和时间,可以精确到毫秒)。 Date(long date)...

weixin_32136817的博客 794

java calendar 类的时间操作_Java Calendar 类的时间操作

packagedemo;importjava.util.Date;importjava.text.SimpleDateFormat;importjava.text.DateFormat;importjava.text.ParseException;importjava.util.Calendar;public classTest{publicTest(){}public static voidma...

weixin_39585691的博客 151

java用日历类比较时间_java常用类之Date类与Calendar类

一、Date类在JDK1.0中,Date类是唯一的一个代表时间的类,但是由于Date类不便于实现国际化,所以从JDK1.1版本开始,推荐使用Calendar类进行时间和日期处理。1.使用Date类代表当前系统时间Date date = new Date();System.out.println(date);使用Date类的默认构造方法创建出来的对象就代表当前的时间,由于Date类覆盖了toStri...

weixin_39907850的博客 378

Android 使用Calendar类获取系统时间

Android 使用Calendar类获取系统时间: 1.定义变量 private int mYear; private int mMonth; private int mDay; private int mHour; private int mMinute; 2.使用Calendar 类获取当前系统时间 fi...

孤帆沧海 2367

用Calendar类获取当前时间

 感觉get 到一个新东西

qq_40956909的博客 760

Date、Calendar、LocalDateTime:Java 处理时间的类该怎么选?

在 Java 开发中,处理时间和日期是一项非常常见的任务。从早期的Date类,到后来的Calendar类,再到 Java 8 引入的LocalDateTime等新时间类,Java 为我们提供了多种处理时间的方式。但面对这些不同的类,很多开发者都会感到困惑:它们之间有什么区别?在不同场景下该如何选择?本文将详细解析这三个类的特点、问题及适用场景,帮你理清思路,做出正确选择。​

Java是世界上最好的语言 1070

calendar java 总结_Java时间类Date类和Calendar类的使用详解

起因:写代码的时候经常会用到获取当前时间戳和日期,现总结如下public void testDate() {//SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd");//设置日期格式Date date = new Date();String dateString = date.toString();long times = date.ge...

weixin_39578899的博客 112

Java Calendar 类的时间操作

Java Calendar 类时间操作,代码很简单。 演示了获取时间,日期时间的累加和累减。   [java] view plaincopy package MyTest;      /*   * 演示 Calendar 的一般操作   */   import java.text.SimpleDateFormat;   impor

姚老板的黑店 1180

java时间Date、Calendar类以及格式转换的详解

一、Java中的日期和时间处理方法 Date类(官方不再推荐使用,官方解释Date类不利于国际化,推荐使用Calendar类) Calendar类 DateFormat类 使用此类来时间初始化 Date类 Date 表示特定的瞬间,精确到毫秒。 在 JDK 1.1 之前,类 Date 有两个其他的函数。它允许把日期解释为年、月、日、小时、分钟和...

爱吃蘑菇的小男孩 3455
上一篇: 关于springboot的一些小内容
下一篇: idea dubbo在debug(调试)模式下,启动很慢的问题解决方法
jothan_lee
博客等级 码龄9年 30粉丝 58原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值