1.Calendar类

用于获取或者修改时间,之前学的Date类,获取和修改时间的方法已经过时

2.Calendar对象的创建

Calendar类里面有很多抽象方法,如果创建对象就要全部重写,所以不能直接创建

我们可以使用多态解决创建对象的问题,由于其子类对象也较难创建,所以我们使用下图中的方法获取其子类对象



3.Calendar类的成员方法

直接打印Calendar对象会出现一大包东西,看起来非常不方便,所以我们使用它的方法来获取和修改时间

1.get方法

get方法括号里要放入Calendar写好的对应的静态常量,每一个常量都有对应的整数

如图,分别对应年、月、日



注意事项:星期的排列

老外的星期排列和我们的不同,他们把星期日放在第一天,打印出来的结果就会和我们认为的星期不同

如图,本该是星期六的,但是打印出来的结果是7

解决方法:创建数组

上图中返回星期的get虽然不能对应上我们的星期,但是系统会返回一个数字给我们,那我们就可以写一个星期的数组,然后将返回的数字作为对应的索引,然后再将正确的星期字符打印出来

2.set方法



.

可以指定某个时间段进行修改,也可以对时间整体修改

3.add方法

如图,add方法可以对某个时间段进行加减操作



.



案例1



.

4.Calender与Date转换的方法

1.getTime:Calendar->Date

2.setTime:Date->Calendar

案例2

第二点就要用到刚才学的setTime方法



.

JDK7-日历类--java进阶day07的更多相关文章

  1. Java:日历类、日期类、数学类、运行时类、随机类、系统类

    一:Calendar类 java.util 抽象类Calendar   1.static Calendar getInstance()使用默认时区和语言环境获得一个日历. 2. int get(int ...

  2. Java进阶01 String类

    链接地址:http://www.cnblogs.com/vamei/archive/2013/04/08/3000914.html 作者:Vamei 出处:http://www.cnblogs.com ...

  3. java学习笔记之日期日历类

    java学习笔记之日期日历 Date日期类概述: 表示特定的瞬间,精确到毫秒 Date类的构造方法: 1.空参数构造方法 Date date = new Date(); 获取到当前操作系统中的时间和日 ...

  4. JAVA进阶之旅(二)——认识Class类,反射的概念,Constructor,Field,Method,反射Main方法,数组的反射和实践

    JAVA进阶之旅(二)--认识Class类,反射的概念,Constructor,Field,Method,反射Main方法,数组的反射和实践 我们继续聊JAVA,这次比较有意思,那就是反射了 一.认识 ...

  5. Java进阶(四十)Java类、变量、方法修饰符讲解

    Java进阶(四十)Java类.变量.方法修饰符讲解 Java类修饰符 abstract: 将一个类声明为抽象类,没有实现的方法,需要子类提供方法实现. final: 将一个类生命为最终(即非继承类) ...

  6. java基础22 日期类、日历类、日期格式类

    package com.dhb.code; import java.text.ParseException; import java.text.SimpleDateFormat; import jav ...

  7. 31.Java基础_日期/日期格式/日历类

    Date类 Date对象构造方法 Date对象常用方法 import java.util.*; public class test { public static void main(String[] ...

  8. 日历类和日期类转换 并发修改异常 泛型的好处 *各种排序 成员和局部变量 接口和抽象类 多态 new对象内存中的变化

    day07 ==和equals的区别? ==用于比较两个数值 或者地址值是否相同.  equals 用于比较两个对象的内容是否相同   String,StringBuffer.StringBuilde ...

  9. Java进阶知识

    01[Object类.常用API] 主要内容 Object类 Date类 DateFormat类 Calendar类 System类 StringBuilder类 包装类 第一章 Object类 1. ...

  10. Java 进阶 hello world! - 中级程序员之路

    Java 进阶 hello world! - 中级程序员之路 Java是一种跨平台的语言,号称:"一次编写,到处运行",在世界编程语言排行榜中稳居第二名(TIOBE index). ...

随机推荐

  1. Java工具类SignUtil

    import javax.crypto.Mac; import javax.crypto.SecretKey; import javax.crypto.spec.SecretKeySpec; impo ...

  2. 【刷题】牛客模拟面试 > 模拟面试报告

    https://www.nowcoder.com/interview/ai/index 1-TCP协议的流量控制和拥塞控制 TCP的流量控制是基于窗口机制实现的: 在建立连接时, 发送方和接收方都会建 ...

  3. AQS源码深度剖析,大厂面试必看!

    AQS(AbstractQueuedSynchronizer)是Java众多锁以及并发工具的基础类,底层采用乐观锁,大量采用CAS操作保证其原子性,并且在并发冲突时,采用自旋方法重试.实现了轻量高效的 ...

  4. 我的程序库:HiCSDB

    HiCSDB是我写的一个通用程序库,地址:https://github.com/xumingxsh/HiCSDB 该库的目标是简化C#的数据库交互操作. 在这个库中,我将数据库的交互操作抽象为一下几个 ...

  5. web95 比较麻烦的interval绕过

    审计 include("flag.php"); highlight_file(__FILE__); if(isset($_GET['num'])){ $num = $_GET['n ...

  6. ctfshow--web6 sql注入空格绕过

    这道题目空格被过滤了,那么我们可以用/**/来替换空格 'union/**/select/**/1,(select/**/database()),3# //查看数据库名名字为web2 查看web2下的 ...

  7. Rocksdb原理简介

    本文分享自天翼云开发者社区<Rocksdb原理简介>,作者:l****n Rocksdb作为当下nosql中性能的代表被各个存储组件(mysql.tikv.pmdk.bluestore)作 ...

  8. shell 变量的运算、保存硬件信息脚本

    变量的数学运算 方法一:expr ##加减乘除 [root@localhost ~]# num1=10[root@localhost ~]# num2=16[root@localhost ~]# ex ...

  9. Project Euler 588 题解

    这玩意好像甚至有递推式--不太懂 (为什么是图片?cnblogs 第一个公式没渲染成功) 时间复杂度是 \(O(4^{\deg F}\log K)\) 的. #include<bits/stdc ...

  10. 在flink消费一段时间kafka后,kafka-group的offset被重置了是怎么回事?

    一.背景 腾讯Flink使用 KafkaSource API创建source端,源码中默认开启了checkpoint的时候提交offset 到kafka-broker.读取kafka数据写入到iceb ...