1 毫秒值概念
时间和日期的计算,必须依赖毫秒值
获取当前日期的毫秒值:System.currentTimeMillis() 返回值long类型参数,
时间原点:公元1970年1月1日,午夜0:00:00 英国格林威治,毫秒值是0

2 Date类的构造方法
空参构造:public Date()
带参构造:public Date(long times)

3 Date类的get和set方法
public long getTime(); 日期对象→毫秒值
public void setTime(long times);毫秒值→日期对象

4 日期格式化
1: 创建SimpleDateFormat对象,在类构造方法中,写入字符串的日期格式 (自己定义)
2: SimpleDateFormat调用方法format对日期进行格式化
public String format(Date date) 传递日期对象,返回字符串
日期模式:
yyyy 年份
MM 月份
dd 月中的天数
HH 0-23小时
mm 小时中的分钟
ss 秒
yyyy年MM月dd日 HH点mm分钟ss秒 汉字修改,: - 字母表示的每个字段不可以随便写

5 字符串转成日期对象
1: 创建SimpleDateFormat的对象,构造方法中,指定日期模式
2: 子类对象,调用方法 parse 传递String,返回Date
注意: 时间和日期的模式yyyy-MM-dd, 必须和字符串中的时间日期匹配

6 Calendar类
Calendar日历类(抽象类),包含静态方法getInstance(),通过静态方法直接获取,不需new子类对象

getTime() 把日历对象转成Date日期对象
int get(int field) 获取指定日历字段的值
Calendar c = Calendar.getInstance();
int year = c.get(Calendar.YEAR);
int month = c.get(Calendar.MONTH) + 1;
int day = c.get(Calendar.DAY_OF_MONTH);

set(int field,int value);将指定的日历字段(年月日)设置为给定的值,c.set(Calendar.MONTH, 9);将月份修改为9月
set(int year,int month,int day);修改日历字段的年月日值,c.set(2099, 1, 1);设置日历为2099年1月1日
add(int field, int value) 进行整数的偏移,c.add(Calendar.DAY_OF_MONTH, -280);让日历中的天数向后偏移280天

7 闰年计算
简便算法: 日历设置到指定年份的3月1日,add向前偏移1天,获取天数,如果是29,则为闰年

public static void function_1(){
    Calendar c = Calendar.getInstance();
    c.set(2088, 3, 1);
    c.add(Calendar.DAY_OF_MONTH, -1);
    int day = c.get(Calendar.DAY_OF_MONTH);
    if(day == 29)
        System.out.println("是闰年!");
    else
        System.out.println("不是闰年!");
}

Date Calendar的更多相关文章

  1. java-String Date Calendar之间的转换

    1.Calendar 转化 String Calendar calendat = Calendar.getInstance(); SimpleDateFormat sdf = new SimpleDa ...

  2. String Date Calendar之间的转换

    1.Calendar 转化 String Calendar calendat = Calendar.getInstance(); SimpleDateFormat sdf = new SimpleDa ...

  3. 【转】String Date Calendar之间的转换

    1.Calendar 转化 String Calendar calendat = Calendar.getInstance(); SimpleDateFormat sdf = new SimpleDa ...

  4. 【Java】【9】String Date Calendar之间的转换

    前言: 1, Calendar 转化 String 2, Calendar 转化 Date 3,Date 转化 String 4,Date 转化 Calendar 5,String 转化 Calend ...

  5. [java]转:String Date Calendar之间的转换

    String Date Calendar之间的转换 String Date Calendar  1.Calendar 转化 String Calendar calendat = Calendar.ge ...

  6. 一篇文章吃透iOS、JS的时间日期(Date, Calendar, Locale, TimeZone)

    iOS 时间相关类 NSDate - 表示一个绝对的时间点. NSCalendar - 代表一个特定的日历,例如公历或者希伯来日历.它提供了一系列基于日期的计算,并且可以让你在"NSDate ...

  7. Java的三种日期工具 Date Calendar SimpleDateFormat

    三种日期工具 配合下面的案例可以更加深度的了解 Date 需要导包java.util.Date Date d = new Date(); //两种都是获取到现在时间的时间戳 long t1 = d.g ...

  8. 基础笔记4(包装类,时间date. calendar

    1.包装类 基本类型和对象. 编译器会对基本类型和包装类进行自动拆箱,装箱处理 Interger  i=5; int i=new Interger(4); 一个缓存问题:以便提高效率 integer ...

  9. Java 数据类型之间的转换 拆分字符串 Date/Calendar的转换

    数据类型转换 1. String - Int String str="123"; int i=1; int str=Integer.parseInt(str); String i= ...

  10. 黑马程序员——JAVA基础之System,Runtime,Date,Calendar,Math

    ------- android培训.java培训.期待与您交流! ---------- System:  类中的方法和属性都是静态的. out:  标准输出,默认是控制台. in:标准输入,默认是键盘 ...

随机推荐

  1. 【Nginx】Nginx在Linux下的入门介绍

    Nginx的安装 下载.解压 从Nginx下载安装包,我下的是nginx-1.8.0.tar.gz.解压后的目录为: [root@blog third_package]# tar -zxf nginx ...

  2. 【iCore1S 双核心板_ARM】例程二十:UART_IAP_ARM实验——更新升级STM32

    实验现象及操作说明: 1.本例程共有两个代码包,APP和IAP,IAP程序功能实现将APP程序升级至STM32中. 2.直接上电或烧写程序将执行升级的APP应用程序. BIN升级文件产生方法: 1.编 ...

  3. 【转载】Elasticsearch 5.x 字段折叠的使用,广度搜索

    https://elasticsearch.cn/article/132 备注,分组字段只能是 keyword或num类型,不能是text类型 在 Elasticsearch 5.x 有一个字段折叠( ...

  4. 牛客网_Go语言相关练习_判断&选择题(6)

    本文共34道题目 一.判断题 此题考查编码规范. 反射最常见的使用场景是做对象的序列化(serialization,有时候也叫Marshal & Unmarshal). 例如:Go语言标准库的 ...

  5. C#.NET接收JSON数组

    如果要在后台接收类似以下的JSON数据 试了object.Array.Hashtable等类型都收不到,string[]数组的话只收到长度,内容还是空的,最后想到用List<string> ...

  6. B - 吉哥系列故事——恨7不成妻

    单身! 依然单身! 吉哥依然单身! DS级码农吉哥依然单身! 所以,他生平最恨情人节,不管是214还是77,他都讨厌! 吉哥观察了214和77这两个数,发现: 2+1+4=7 7+7=72 77=71 ...

  7. JDK线程池的拒绝策略

    关于新疆服务请求未带入来话原因的问题 经核查,该问题是由于立单接口内部没有成功调用接续的 “更新来电原因接口”导致的,接续测更新来电原因接口编码:NGCCT_UPDATESRFLAG_PUT ,立单接 ...

  8. JS实现表格使用上下左右键聚集

    //调用:new tabTableInput("tblGrid","text"); var tabTableInput = function (tableId, ...

  9. ERP实施顾问--理解客户的解决方案与实际需求

    在企业进行信息化时实施方的顾问都会来现场进行"需求调研",再根据"调研"的结果进行双方确认,确认后按此蓝本进行开发实施. 一切看上去都很美好,需求明确.开发顺利 ...

  10. git 实战

    1.网站手动创建新分支 2.在master下 项目路径下 右键 Git branch here 3.切分支: git fetch git branch -a git branch -r git che ...