时间和日期中常用到的几个类
- 格式:pdf
- 大小:288.99 KB
- 文档页数:12
时间和日期的表达时间和日期是我们在日常生活中经常接触的概念,准确地表达时间和日期对于良好的沟通和组织活动是至关重要的。
在本文中,将详细介绍时间和日期的表达方法,以便我们可以准确有效地进行时间和日期的交流。
一、时间的表达1. 24小时制:在24小时制中,时间从00:00开始,一直到23:59结束。
例如,早上八点可以表示为08:00,下午两点半可以表示为14:30。
这种表达方法通常用于正式和官方场合。
2. 12小时制:在12小时制中,上午的时间从12:00开始,中午12点后的时间表示为 PM(午后)。
例如,上午九点可以表示为09:00 AM,下午五点半可以表示为05:30 PM。
这种表达方法通常用于非正式场合。
3. 时刻表达:在日常对话中,为了更直观地表达时间,我们可以使用时刻来说明。
例如,早晨、上午、中午、下午、傍晚、晚上、半夜等。
例如,我们可以说"早晨六点"、"傍晚五点"等。
4. 时间段表达:除了具体时刻的表达,我们还常常使用时间段来表示一段时间的范围。
例如,"上午9点到下午5点"、"周一至周五"等。
这种表达方式有助于让对方更明确地了解时间的安排。
二、日期的表达1. 数字表达:最直观的日期表达方式是使用数字。
例如,3月8日可以直接表示为03/08,或者8th March(3月8日)。
这种表达方式简洁明了,常用于书面和电子沟通中。
2. 年月日顺序:在英语中,日期的表达方式通常是先写月份,再写日期,最后写年份。
例如,2022年6月30日可以表示为June 30, 2022。
3. 周几的表达:除了具体的日期,我们还需要准确地表达一周中的某一天。
例如,星期一到星期日可以表示为Monday to Sunday或Monto Sun。
更具体的表达方式是使用缩写,如Mon代表星期一,Tue代表星期二,以此类推。
4. 特殊日期的表达:对于一些特殊的日期,如节假日和纪念日,有时我们会使用特定的表达方式。
Java中的⽇期和时间类以及Calendar类⽤法详解Java⽇期和时间类简介Java 的⽇期和时间类位于 java.util 包中。
利⽤⽇期时间类提供的⽅法,可以获取当前的⽇期和时间,创建⽇期和时间参数,计算和⽐较时间。
Date 类Date 类是 Java 中的⽇期时间类,其构造⽅法⽐较多,下⾯是常⽤的两个:Date():使⽤当前的⽇期和时间初始化⼀个对象。
Date(long millisec):从1970年01⽉01⽇00时(格林威治时间)开始以毫秒计算时间,计算 millisec 毫秒。
如果运⾏ Java 程序的本地时区是北京时区(与格林威治时间相差 8 ⼩时),Date dt1=new Date(1000);,那么对象 dt1 就是1970年01⽉01⽇08时00分01秒。
请看⼀个显⽰⽇期时间的例⼦:import java.util.Date;public class Demo{public static void main(String args[]){Date da=new Date(); //创建时间对象System.out.println(da); //显⽰时间和⽇期long msec=da.getTime();System.out.println("从1970年1⽉1⽇0时到现在共有:" + msec + "毫秒");}}运⾏结果:Mon Feb 05 22:50:05 CST 2007从1970年1⽉1⽇0时到现在共有:1170687005390 毫秒⼀些⽐较常⽤的 Date 类⽅法:Date 对象表⽰时间的默认顺序是星期、⽉、⽇、⼩时、分、秒、年。
若需要修改时间显⽰的格式可以使⽤“SimpleDateFormat(String pattern)”⽅法。
例如,⽤不同的格式输出时间:import java.util.Date;import java.text.SimpleDateFormat;public class Demo{public static void main(String args[]){Date da=new Date();System.out.println(da);SimpleDateFormat ma1=new SimpleDateFormat("yyyy 年 MM ⽉ dd ⽇ E 北京时间");System.out.println(ma1.format(da));SimpleDateFormat ma2=new SimpleDateFormat("北京时间:yyyy 年 MM ⽉ dd ⽇ HH 时 mm 分 ss 秒");System.out.println(ma2.format(-1000));}}运⾏结果:Sun Jan 04 17:31:36 CST 20152015 年 01 ⽉ 04 ⽇星期⽇北京时间北京时间:1970 年 01 ⽉ 01 ⽇ 07 时 59 分 59 秒Calendar 类抽象类 Calendar 提供了⼀组⽅法,允许把以毫秒为单位的时间转换成⼀些有⽤的时间组成部分。
GregorianCalendar类的用法1. 介绍GregorianCalendar类是Java中用于操作日期和时间的一个重要类。
它实现了Calendar抽象类,并提供了处理公历日期的功能。
GregorianCalendar类可以用于表示具体的日期和时间,进行日期和时间的计算、比较和格式化等操作。
2. 创建GregorianCalendar对象要使用GregorianCalendar类,首先需要创建一个GregorianCalendar对象。
可以使用以下几种方式创建GregorianCalendar对象:2.1 无参构造方法可以通过调用无参构造方法来创建一个表示当前日期和时间的GregorianCalendar 对象。
示例代码如下:GregorianCalendar calendar = new GregorianCalendar();2.2 通过指定年月日创建对象也可以通过传入年、月、日等参数来创建一个具体的GregorianCalendar对象。
示例代码如下:GregorianCalendar calendar = new GregorianCalendar(2022, 0, 1); // 表示2022年1月1日2.3 设置日期和时间创建GregorianCalendar对象后,也可以通过调用相应的set方法来设置日期和时间。
示例代码如下:GregorianCalendar calendar = new GregorianCalendar();calendar.set(Calendar.YEAR, 2022);calendar.set(Calendar.MONTH, Calendar.JANUARY);calendar.set(Calendar.DAY_OF_MONTH, 1);3. 获取日期和时间通过GregorianCalendar对象可以获取日期和时间的各个部分,包括年、月、日、时、分、秒等。
数据分析基础知识(精选)数据分析基础知识(精选)现代社会越来越重视数据的价值,数据分析的能力也日益受到重视。
掌握数据分析的基础知识对于从事数据相关工作的人来说至关重要。
本文将介绍几个数据分析的基础知识,希望能帮助读者快速入门。
1. 数据类型在数据分析中,我们会遇到不同的数据类型。
常见的数据类型包括:- 数值型(Numerical):代表实际的数值,可以进行数值运算。
如年龄、体重等。
- 类别型(Categorical):表示某个特定类别的数据,通常用文本描述。
如性别、地区等。
- 顺序型(Ordinal):类似类别型数据,但具有顺序关系,可进行排序。
如评分等级、学历等。
- 时间型(Temporal):表示时间或日期的数据类型。
如出生日期、交易时间等。
了解数据类型对于选择合适的数据处理方法至关重要。
2. 数据收集在进行数据分析之前,需要先收集数据。
数据收集可以通过多种途径实现,例如:- 实地调查:直接到实地进行调查和观察,获得准确的数据。
- 问卷调查:通过设计问卷并发放给目标群体,收集大量数据。
- 数据库查询:通过查询数据库获取已经存在的数据。
- 网络爬虫:利用程序自动从网页上抓取数据。
不同的数据收集方法适用于不同的场景,需要根据实际情况选择。
3. 数据清洗在收集到数据后,通常会发现数据存在一些问题,例如缺失值、离群值等。
数据清洗是指对这些问题进行处理,以确保数据的准确性和一致性。
数据清洗的常见步骤包括:- 删除重复值:对于数据集中出现的重复数据,可根据特定字段进行去重。
- 处理缺失值:对于缺失值,可以选择删除含有缺失数据的行或列,或者采用填充的方法进行处理。
- 异常值处理:对于异常值(离群值),可以选择删除或替换为合理的值。
数据清洗可以保证数据的质量,提高后续分析的准确性。
4. 数据可视化数据可视化是将数据通过图表、图形等方式展现出来,以直观地表达数据的特征和规律。
常见的数据可视化工具包括:- 柱状图:用于比较多个类别的数值。
MySQL中常见的数据类型及其用途MySQL是一种常用的关系型数据库管理系统,被广泛应用于Web开发和其他领域。
在MySQL中,数据类型是数据表中各列的属性之一,它定义了数据的存储格式、占用空间和操作行为。
不同的数据类型适用于不同的数据存储需求和数据操作操作。
本文将介绍MySQL中常见的数据类型及其用途。
1. 整型数据类型整型数据类型用于存储整数值,常见的有以下几种:- TINYINT:存储范围为-128到127的整数。
通常用于存储布尔值,0表示假,1表示真。
- SMALLINT:存储范围为-32768到32767的整数。
适用于存储较小的整数值。
- MEDIUMINT:存储范围为-8388608到8388607的整数。
适用于存储中等大小的整数值。
- INT:存储范围为-2147483648到2147483647的整数。
适用于存储一般大小的整数值。
- BIGINT:存储范围为-9223372036854775808到9223372036854775807的整数。
适用于存储较大的整数值。
整型数据类型用于存储整数,经常用于记录索引、主键或表示计数值。
2. 浮点型数据类型浮点型数据类型用于存储浮点数值,即带有小数点的数值。
常见的有以下几种:- FLOAT:单精度浮点数,占用4字节。
通常用于存储较小范围的浮点数。
- DOUBLE:双精度浮点数,占用8字节。
适用于存储较大范围的浮点数。
浮点型数据类型用于存储需要保留小数位的数值,如货币金额、科学计数法表示的数值等。
3. 定点型数据类型定点型数据类型用于存储固定精度的数值,适用于需要精确计算的场景。
常见的有以下几种:- DECIMAL:用于存储固定精度的十进制数值。
可以指定精度和小数位数。
定点型数据类型适用于要求高精度计算的场景,如财务计算、精确测量等。
4. 字符串型数据类型字符串型数据类型用于存储文本数据,常见的有以下几种:- CHAR:固定长度字符串,最多可以存储255个字符。
汉语的时间名词解释时间是人类生活中不可或缺的一部分,而汉语中的时间名词起着描述时间的重要作用。
本文将对汉语中常见的时间名词进行解释,并探讨它们在语言和文化中的意义。
一、年份名词1. 公元(gōng yuán):指阳历纪年的起点,我国现行的纪年法采用公元纪年。
2. 汉历(hàn lì):汉族传统的农历纪年法,与公历存在差异。
二、季节名词1. 春季(chūn jì):一年的第一季,代表着生机勃勃、万物复苏的季节。
2. 夏季(xià jì):一年的第二季,代表着炎热的盛夏天气。
3. 秋季(qiū jì):一年的第三季,代表着丰收的季节。
4. 冬季(dōng jì):一年的第四季,代表着寒冷的冬天。
三、日期名词1. 星期(xīng qī):一周的周期单位,通常用汉字表示星期几。
2. 日子(rì zi):指一年中的具体日期,比如:生日、纪念日等。
3. 日期(rì qī):指具体的年月日形成的时间点,用于表示某个特定的日子。
四、时间段名词1. 上午(shàng wǔ):一天中的前半部分,时间从凌晨至中午12点。
2. 中午(zhōng wǔ):一天中的正午时刻,也是午餐时间。
3. 下午(xià wǔ):一天中的后半部分,时间从中午12点至傍晚。
4. 晚上(wǎn shàng):一天中的黑夜时刻,时间从傍晚至深夜。
五、节日名词1. 春节(chūn jié):汉族传统的农历新年,是一年中最重要的节日。
2. 清明节(qīng míng jié):传统的祭祖节日,通常在4月4日至6日之间。
3. 国庆节(guó qìng jié):纪念中华人民共和国成立的节日,通常在10月1日。
六、时间单位名词1. 秒(miǎo):时间的最小单位,一分钟等于60秒。
Date's Supermarket (日期超市)-常见的日期表达方式| 文章作者:佚名| 文章来源:网络| 文章录入:henry982 | 更新时间:2007-6-29 | 字体:小大|我们常常用“年、月、日”和“星期几”来记录某一天的日期。
一. “年、月、日”日期表示法“年、月、日”日期表达法可分为七类。
第一类:按“日、月、年”顺序排列。
例如:(1 )30th Jan. 2004;(2 )30 Jan. 2004;(3 )30 Jan,2004第二类:按“月、日、年”顺序排列。
例如:(4 )Jan. 30 2004;(5 )Jan. 30th 2004;(6 )Jan. 30th,2004第三类:按“ on + 日(序数词)+of +月+年”或“ on +月+日(序数词)+年”顺序排列。
例如:(7 )on the thirtieth of January,2004;(8 )on January (the )30th,2004 第四类(英国):按“日、月、年”顺序排列。
例如:(9 )30.4.04;(10 )30/4/04第五类(美国):按“月、日、年”的顺序排列。
例如:(11 )1.30.04 ;(12 )4/30/04第六类:按“日、月(罗马数字)、年”顺序排列。
例如:(13 )30/I/04第七类:在电报、电传中常用“年、月、日”顺序,并规定每个时间单位占用两个数字格。
例如:(14 )04 04 30此外,在用“年、月、日”的顺序排列时,可与morning,afternoon,evening,night 结合。
“在2004 年1 月30 日上午”可译为in the morning on the thirtieth of January,2004 或on the morning of the thirtieth of January ,2004.二. “星期几”表示法“星期几”表达法可分为四类:第一类:表示“上星期几”(1 )“星期几”+of last week 或last +“星期几”+week (英式)。
第七课时间以及日期表达法一.时间的表达法具体几点前通常用介词at1)顺读法:先说小时数,再说分钟数。
8:00 eight (o’clock) 9:05 nine five7:15 seven fifteen 7:30 seven thirty6:45 six forty-five 6:55 six fifty-five2) 逆读法:先说分钟数,再说小时数①分钟数≤30用“分钟数+ past + 小时数”来表达(即几点过了几分)15分常用a quarter(一刻钟,四分之一)来表示30分常用half(半,一半)来表示9:05 five past nine 8:24 twenty-four past eight7:15 a quarter past seven (fifteen past seven)7:30 half past seven (thirty past seven)②分钟数>30用“(60-分钟数)+ to + (小时数+ 1)”来表达(即几点差几分)7:31 twenty-nine to eight 8:45 a quarter to nine (fifteen to nine) 9:55 five to ten二. 关于时间的问法(1) 以when提问,“什么时候”可以是较长的时间段,也可以是较短的时间点A:When is your birthday? 你的生日是什么时候?B:My birthday is on Dec. 29th. 我的生日是12月29日。
这里就是指一天的时间段A:When do you go home? 你几点回家?B:I go home at 4:30 p.m. 我下午4:30回家. 这里when问的是具体的时间(2) 具体几点我们通常用what time提问What time is it now? 现在几点了?or What’s the time?几点了?三.英语日期的表示法英语中月份和星期名称都是专有名词,它们的首字母必须大写,并且前面无需用冠词。
使用MySQL的日期和时间函数处理日期和时间数据MySQL是一个功能强大的关系型数据库管理系统,广泛应用于各种类型的应用程序中。
在数据库中,日期和时间数据是常见的数据类型之一。
MySQL提供了许多日期和时间函数,可以帮助我们处理和操作这些数据。
本文将介绍如何使用MySQL的日期和时间函数处理日期和时间数据。
1. 日期和时间数据类型在MySQL中,我们可以使用不同的数据类型来存储日期和时间数据。
其中,最常用的类型是DATE、TIME、DATETIME和TIMESTAMP。
- DATE类型用于存储日期,格式为'YYYY-MM-DD'。
例如,'2022-01-01'表示2022年1月1日。
- TIME类型用于存储时间,格式为'HH:MM:SS'。
例如,'10:30:00'表示10点30分0秒。
- DATETIME类型用于存储日期和时间,格式为'YYYY-MM-DD HH:MM:SS'。
例如,'2022-01-01 10:30:00'表示2022年1月1日10点30分0秒。
- TIMESTAMP类型也用于存储日期和时间,格式与DATETIME相同。
但是,TIMESTAMP类型的取值范围比DATETIME更广,可以存储的时间范围是从'1970-01-01 00:00:01'到'2038-01-19 03:14:07'。
2. 日期和时间函数2.1. NOW()NOW()函数返回当前日期和时间。
它的语法如下:SELECT NOW();2.2. CURDATE()CURDATE()函数返回当前日期。
它的语法如下:SELECT CURDATE();2.3. CURTIME()CURTIME()函数返回当前时间。
它的语法如下:SELECT CURTIME();2.4. YEAR()YEAR()函数用于提取日期或日期时间值的年份。
java中date类的常用方法Java中的Date类是用于表示日期和时间的类,它提供了一系列常用的方法来处理日期和时间的操作。
下面将介绍Date类的一些常用方法。
1. getDate():获取当前日期的天数。
返回值为一个整数,范围从1到31。
2. getMonth():获取当前日期的月份。
返回值为一个整数,范围从0到11,其中0表示一月,11表示十二月。
3. getYear():获取当前日期的年份。
返回值为一个整数,表示当前年份减去1900。
4. getDay():获取当前日期是星期几。
返回值为一个整数,范围从0到6,其中0表示星期日,1表示星期一,以此类推。
5. getHours():获取当前时间的小时数。
返回值为一个整数,范围从0到23。
6. getMinutes():获取当前时间的分钟数。
返回值为一个整数,范围从0到59。
7. getSeconds():获取当前时间的秒数。
返回值为一个整数,范围从0到59。
8. getTime():获取当前日期和时间的毫秒数。
返回值为一个长整型数字,表示从1970年1月1日00:00:00 GMT到当前日期和时间的毫秒数。
9. setTime():设置日期和时间。
接受一个长整型参数,表示从1970年1月1日00:00:00 GMT到所设置日期和时间的毫秒数。
10. after(Date date):判断当前日期是否在指定日期之后。
返回值为一个布尔值,如果当前日期在指定日期之后,则返回true,否则返回false。
11. before(Date date):判断当前日期是否在指定日期之前。
返回值为一个布尔值,如果当前日期在指定日期之前,则返回true,否则返回false。
12. compareTo(Date date):比较当前日期和指定日期的顺序。
返回值为一个整数,如果当前日期在指定日期之前,则返回负数;如果当前日期等于指定日期,则返回0;如果当前日期在指定日期之后,则返回正数。
一、时间和日期中常用到的几个类:java.util.Date,java.util.Calendar,java.util.GregorainCalendar,java.text.DateFormat,java.text.SimpleDateFormatjava.util.Date :表示特定瞬间,精确到毫秒一天是24 * 60 * 60 = 86400 秒世界时(UT 或UTC) , 格林威治时间(GMT), 格林威治时(GMT)和世界时(UT)是相等的,格林威治时(GMT) 是标准的"民间"称呼, 世界时(UT) 是相同标准的科学称呼。
UTC 和UT 的区别是:UTC 是基于原子时钟的,UT 是基于天体观察的。
二、常用的构造方法:Date();Date(long date)(long date) 表示从标准基准时间(称为"历元" epoch ,即1970.1.100:00:00 GMT)经历的毫秒数。
还有一些构造方法已经deprecated 了三、主要的方法:(介绍几个常用的,详细的查询jdk 文档)boolean after(Date when) 测试日期在此日期之后。
boolean before(Date when) 测试日期在此日期之前。
Object clone() 返回此对象的副本long getTime() 返回自1970.1.1 00:00:00 GMT 后,此对象表示的毫秒数void setTime(long time) 设置此Date 对象,以表示1970 年1 月1 日00:00:00 GMT 以后time 毫秒的时间点。
String toString() 将Date 对象转化成以下形式的String:dow mon dd hh:mm:ss zzz yyyy其中:dow 是一周中的某一天(Sun, Mon, Tue, Wed, Thu, Fri, Sat)。
dow 是一周中的某一天(Sun, Mon, Tue, Wed, Thu, Fri, Sat)。
mon 是月份(Jan, Feb, Mar, Apr, May, Jun, Jul, Aug, Sep,Oct, Nov, Dec)。
dd 是一月中的某一天(01 至31),显示为两位十进制数。
hh 是一天中的小时(00 至23),显示为两位十进制数。
mm 是小时中的分钟(00 至59),显示为两位十进制数。
ss 是分钟中的秒数(00 至61),显示为两位十进制数。
60,61 是因为有"润秒"zzz 是时区(并可以反映夏令时)。
标准时区缩写包括方法parse 识别的时区缩写。
如果不提供时区信息,则zzz 为空,即根本不包括任何字符。
yyyy 是年份,显示为4 位十进制数。
使用System.currentTimeMillis() 获得当前系统时间的毫秒数四、java.util.Calendar :Calendar 类是一个抽象类.Calendar rightNow = Calendar.getInstance();可以使用三种方法更改日历字段:set()、add() 和roll()。
set(f, value) 将日历字段f 更改为value。
此外,它设置了一个内部成员变量,以指示日历字段f 已经被更改。
尽管日历字段f 是立即更改的,但是直到下次调用get()、getTime()、getTimeInMillis()、add() 或roll() 时才会重新计算日历的时间值(以毫秒为单位)。
因此,多次调用set() 不会触发多次不必要的计算。
add(f, delta) 将delta 添加到f 字段中。
这等同于调用set(f, get(f) + delta)roll(f, delta) 将delta 添加到f 字段中,但不更改更大的字段。
java.util.GregorianCalendar:GregorianCalendar 是Calendar 的一个具体子类,提供了世界上大多数国家使用的标准日历系统。
java.text.DateFormat:DateFormat 是日期/时间格式化子类的抽象类,它以与语言无关的方式格式化并分析日期或时间。
java.text.SimpleDateFormat:SimpleDateFormat 是一个以与语言环境相关的方式来格式化和分析日期的具体类。
它允许进行格式化(日期-> 文本)、分析(文本-> 日期)和规范化。
SimpleDateFormat 使得可以选择任何用户定义的日期-时间格式的模式。
但是,仍然建议通过DateFormat 中的getTimeInstance、getDateInstance 或getDateTimeInstance 来新的创建日期-时间格式化程序。
每一个这样的类方法都能够返回一个以默认格式模式初始化的日期/时间格式化程序。
可以根据需要使用applyPattern 方法来修改格式模式。
日期和时间格式由日期和时间模式字符串指定。
在日期和时间模式字符串中,未加引号的字母'A' 到'Z' 和'a' 到'z'被解释为模式字母,用来表示日期或时间字符串元素。
字母日期或时间元素表示示例G Era 标志符Text ADy 年Year 1996; 96M 年中的月份Month July; Jul; 07w 年中的周数Number 27W 月份中的周数Number 2D 年中的天数Number 189d 月份中的天数Number 10F 月份中的星期Number 2E 星期中的天数Text Tuesday; Tuea Am/pm 标记Text PMH 一天中的小时数(0-23)Number 0k 一天中的小时数(1-24)Number 24K am/pm 中的小时数(0-11)Number 0h am/pm 中的小时数(1-12)Number 12m 小时中的分钟数Number 30s 分钟中的秒数Number 55S 毫秒数Number 978z 时区General time zone Pacific Standard Time; PST; GMT-08:00Z 时区RFC 822 time zone -0800引用日期和时间模式结果"yyyy.MM.dd G 'at' HH:mm:ss z" 2001.07.04 AD at 12:08:56 PDT"EEE, MMM d, ''yy" Wed, Jul 4, '01"h:mm a" 12:08 PM"hh 'o''clock' a, zzzz" 12 o'clock PM, Pacific Daylight Time"K:mm a, z" 0:08 PM, PDT"yyyyy.MMMMM.dd GGG hh:mm aaa" 02001.July.04 AD 12:08 PM"EEE, d MMM yyyy HH:mm:ss Z" Wed, 4 Jul 2001 12:08:56 -0700 "yyMMddHHmmssZ" 010*********-0700"yyyy-MM-dd'T'HH:mm:ss.SSSZ" 2001-07-04T12:08:56.235-0700获得当前系统的毫秒数:Java代码查看源代码打印01.package org.lokvin.example.calendar;02.03.public class CalendarExample1 {04.05. public static void main(String[] args) {06.07. java.util.Date date = new java.util.Date();08. //获得当前系统的毫秒数,自1970.1.1 00:00:00 GMT09. long time = System.currentTimeMillis();10. java.util.Date date1 = new java.util.Date(time);11. System.out.println("date = " + date.toString());12. System.out.println("millisecond = " + time);13. System.out.println("date1 = " + date1.toString());14. }15.16.}运行结果:引用date = Mon Dec 04 16:01:16 CST 2006millisecond = 1165219276771date1 = Mon Dec 04 16:01:16 CST 2006代码:Java代码查看源代码打印01.package org.lokvin.example.calendar;02.03.import java.util.Calendar;04.import java.util.GregorianCalendar;05.06.public class CalendarExample2 {07.08. public static void main(String[] args) {09. //获得当前日期10. Calendar calendar = Calendar.getInstance();11. int era = calendar.get(Calendar.ERA);// 0 = BC, 1 = AD12. System.out.println("ERA = " + era);13. int year = calendar.get(Calendar.YEAR); //200614. System.out.println("YEAR = " + year);15. int month = calendar.get(Calendar.MONTH);16. //获得当前月份,0..11 表示JAN..DEC17. System.out.println("Month = " + month);//0 = JAN ... 11 = DEC18. int day = calendar.get(Calendar.DAY_OF_MONTH);19. System.out.println("Day of Month = " + day); // 120. //获得日期在本周的天数,Sun=1, Mon=2 ... Sta=721. int day_of_week = calendar.get(Calendar.DAY_OF_WEEK);22. System.out.println("Day of Week = " + day_of_week);23.24. //获得当前时间12 时制是Calendar.HOUR25. int hour12 = calendar.get(Calendar.HOUR);26. //获得AM ,PM , 0 = AM, 1 = PM27. int ampm = calendar.get(Calendar.AM_PM);28. System.out.println("hour 12 = " + hour12);29. System.out.println("am pm = " + ampm); //0 = am , 1 = pm30. //获得当前时间24 时制Calendar.HOUR_OF_DAY31. int hour24 = calendar.get(Calendar.HOUR_OF_DAY);32. System.out.println("hour 24 = " + hour24);33.34.35. Calendar today = new GregorianCalendar(2006, Calendar.DECEMBER, 4);36. //Calendar.getInstance() 得到当前具体到毫秒的一个时间点37. System.out.println("calendar = " + calendar.getTime().toString());38. //通过new GregorianCalendar(2006, Calendar.DECEMBER, 4)39. //生成的calendar 除了指定的年,月,日其余为0(时分秒=0)40. System.out.println("today = " + today.getTime().toString());41.42.43. }44.45.}运行结果:引用ERA = 1YEAR = 2006Month = 11Day of Month = 4Day of Week = 2hour 12 = 4am pm = 1hour 24 = 16calendar = Mon Dec 04 16:22:42 CST 2006today = Mon Dec 04 00:00:00 CST 2006两个日期之间的比较:代码:Java代码查看源代码打印01.package org.lokvin.example.calendar;02.03.import java.util.Calendar;04.import java.util.GregorianCalendar;05.06./*07.* 比较两个calendar 对象之间的先后08.*/09.public class CalendarExample3 {10.11. public static void main(String[] args) {12. //日期比较13. Calendar xmas = new GregorianCalendar(2006, Calendar.DECEMBER, 25);14. Calendar newYear = new GregorianCalendar(2007, Calendar.JANUARY, 1);15.16. //比较两个日期先后17. boolean flag = xmas.before(newYear);18. System.out.println("flag = " + flag);19.20. flag = xmas.after(newYear);21. System.out.println("flag = " + flag);22.23. //两个日期相差的毫秒数24. long timeDiffMillis = newYear.getTimeInMillis() - xmas.getTimeInMillis();25. System.out.println("time diff millis = " + timeDiffMillis);26.27. //两个日期相差的秒数28. long diffSecs = timeDiffMillis / 1000;29. System.out.println("time diff secs = " + diffSecs);30.31. //两个日期相差的分钟32. long diffMins = timeDiffMillis / (1000 * 60);33. System.out.println("time diff mins = " + diffMins);34.35. //两个日期相差的小时36. long diffHours = timeDiffMillis / (1000 * 60 * 60);37. System.out.println("time diff hours = " + diffHours);38.39. //两个日期相差的天40. long diffDays = timeDiffMillis / (1000 * 60 * 60 * 24);41. System.out.println("time diff days = " + diffDays);42.43. }44.45.}运行结果:引用flag = trueflag = falsetime diff millis = 604800000time diff secs = 604800time diff mins = 10080time diff hours = 168time diff days = 7使用Calendar 计算年龄:代码:Java代码查看源代码打印01.package org.lokvin.example.calendar;02.03.import java.util.Calendar;04.import java.util.GregorianCalendar;05.06./*07.* 计算年龄08.*/09.public class CalendarExample4 {10.11. public static void main(String[] args) {12. //创建生日的Calendar 对象13. Calendar birthDate = new GregorianCalendar(1979, Calendar.JULY, 7);14. Calendar today = Calendar.getInstance();15. int age = today.get(Calendar.YEAR) - birthDate.get(Calendar.YEAR);16.17. //如果还没有过生日,则age - 118. birthDate.add(Calendar.YEAR, age);19. if(today.before(birthDate)){20. age--;21. }22. System.out.println("age = " + age);23. }24.25.}26.27.判断是否为闰年:28.29.30.31.代码32.package org.lokvin.example.calendar;33.34.import java.util.GregorianCalendar;35.36./*37.* 判断是否为闰年leap year38.*/39.public class CalendarExample5 {40.41. public static void main(String[] args) {42. //判断是否"闰年" leap year43. GregorianCalendar cal = new GregorianCalendar();44. boolean isLeapYear = cal.isLeapYear(1998);45. System.out.println("is leap year 1998 = " + isLeapYear);46. isLeapYear = cal.isLeapYear(2000);47. System.out.println("is leap year 2000 = " + isLeapYear);48. }49.}运行结果:引用is leap year 1998 = falseis leap year 2000 = true获得其他时区的时间:代码Java代码查看源代码打印01.package org.lokvin.example.calendar;02.03.import java.util.Calendar;04.import java.util.GregorianCalendar;05.import java.util.TimeZone;06.07./*08.* 获得其他时区当前时间09.*/10.11.public class CalendarExample6 {12.13. public static void main(String[] args) {14.15. Calendar cal = new GregorianCalendar();16. int hour12 = cal.get(Calendar.HOUR);17. int hour24 = cal.get(Calendar.HOUR_OF_DAY);18. System.out.println("hour12 in our timezone = " + hour12);19. System.out.println("hour24 in our timezone = " + hour24);20.21. //获得其他时区的当前时间,根据zoneId 获得时区22. Calendar calJap = new GregorianCalendar(TimeZone.getTimeZone("Japan"));23. hour12 = calJap.get(Calendar.HOUR);24. System.out.println("hour12 in japs timezone = " + hour12);25. hour24 = calJap.get(Calendar.HOUR_OF_DAY);26. System.out.println("hour24 in japs timezone = " + hour24);27.28. //获得zoneId 的列表29. String[] zoneIds = TimeZone.getAvailableIDs();30. for(int i=0; i String zoneId = zoneIds[i];31. System.out.println("zone id = " + zoneId);32. }33. }34.}运行结果:引用hour12 in our timezone = 5hour24 in our timezone = 17hour12 in japs timezone = 6hour24 in japs timezone = 18zone id = Etc/GMT+12zone id = Etc/GMT+11zone id = MITzone id = Pacific/Apiazone id = Pacific/Midway...格式化日期:Java代码查看源代码打印01.package org.lokvin.example.calendar;02.03.import java.text.DateFormat;04.import java.text.SimpleDateFormat;05.import java.util.Date;06.07.public class DateForamExample {08. public static void main(String[] args) {09. Date rightNow = new Date();10. DateFormat format1 = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");11. DateFormat format2 = new SimpleDateFormat("yyyy-MM-dd");12. DateFormat format3 = new SimpleDateFormat("h:mm a");13. DateFormat format4 = new SimpleDateFormat("yyyy.MM.dd G 'at' HH:mm:ss z");14. DateFormat format5 = new SimpleDateFormat("EEE, MMM, dd, ''yyyy");15. DateFormat format6 = new SimpleDateFormat("yyyy.MM.dd kk:mm 'o''clock' a, zzzz");16. DateFormat format7 = new SimpleDateFormat("yyyyy.MMMMM.dd GGG hh:mm aaa");17.18. System.out.println("format1 = " + format1.format(rightNow));19. System.out.println("format2 = " + format2.format(rightNow));20. System.out.println("format3 = " + format3.format(rightNow));21. System.out.println("format4 = " + format4.format(rightNow));22. System.out.println("format5 = " + format5.format(rightNow));23. System.out.println("format6 = " + format6.format(rightNow));24. System.out.println("format7 = " + format7.format(rightNow));25. }26.27.}输出结果:引用format1 = 2006-12-05 06:12:02format2 = 2006-12-05format3 = 6:12 下午format4 = 2006.12.05 公元at 18:12:02 CSTformat5 = 星期二, 十二月, 05, '2006format6 = 2006.12.05 18:12 o'clock 下午, 中国标准时间format7 = 02006.十二月.05 公元06:12 下午取当月的第一天:java.text.SimpleDateFormat format = new java.text.SimpleDateFormat("yyyy-MM-01");java.util.Date firstDay=new java.util.Date();System.out.println("the month first day is "+formats.format(firstDay));取当月的最后一天:Calendar cal = Calendar.getInstance();int maxDay=cals.getActualMaximum(Calendar.DAY_OF_MONTH);java.text.Format formatter3=new java.text.SimpleDateFormat("yyyy-MM-"+maxDay);System.out.println(formatter3.format(cal.getTime()));Java将Unix时间戳转换成普通日期# public String TimeStampDate(String timestampString){# Long timestamp = Long.parseLong(timestampString)*1000;# String date = new java.text.SimpleDateFormat("yyyy/MM/dd HH:mm:ss").format(new java.util.Date(timestamp));# return date;# } s。