常用类-Date

相关主题
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

Calendar(GregorianCalendar)操作方法 操作方法
rivate void fun3() { Calendar cal = new GregorianCalendar(); cal.set(Calendar.YEAR, 2012); //设置cal的年份为 2012年 System.out.println(cal.get(Calendar.YEAR)); //打印年份 cal.set(Calendar.MONTH, 9); //设置月份 System.out.println(cal.get(Calendar.MONTH)); cal.set(2018, 3, 2); //设置年月日 SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd"); System.out.println(sdf.format(cal.getTime())); cal.add(Calendar.YEAR, 2); //年上加2年 cal.add(Calendar.MONTH, 2);//月上加2 System.out.println(sdf.format(cal.getTime())); System.out.println(cal.get(Calendar.DAY_OF_WEEK));//获取星期几 }
DateFormat日期格式化类(抽象类) String format(Date date) 方法用于格式化时间 static DateFormat getDateInstance() 获取日期的DateFormat 对象 static DateFormat getDateTimeInstance() 获取日期时间的DateFormat 对象 static final DateFormat getDateTimeInstance(int dateStyle, int timeStyle)获取给定 日 期和时间格式化风格 DateFormat 对象 (可选参数 short,full, long, medium ,)
练习
打印未来几年的10个黑色星期五(按照 2010-10-11格式 把年月日打印出来) 提示:循环判断一个月的13号是否是星期五
打印未来10个的黑色星期五 打印未来 个的黑色星期五
private void fun4() { SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd EEEE"); Calendar cal = new GregorianCalendar(); cal.set(Calendar.DAY_OF_MONTH, 13);//设置13号 int count=0; while (count<10) { if (cal.get(Calendar.DAY_OF_WEEK)==Calendar.FRIDAY) { System.out.println(sdf.format(cal.getTime())); count++; } cal.add(Calendar.MONTH, 1); } }
"yyyy-MM-dd EEEE hh:mm:ss" yyyy年MM月dd日 HH时mm分ss秒SSS毫秒 "yyyy/MM/dd hh:mm:ss" "EEE, d MMM yyyy HH:mm:ss Z"
public Date parse(String source) ( DateFormat类中 )解析格式化一个字符串时间, 将一个字符串转换成时间 例如:Date d = sdf2.parse("2008/10/28 13:20:22");//注意字符串的格式必须和设定 的格式(sdf2)一致
日期和时间模式
字母 日期或时间元素 表示 示例 y 年 Year 1996; 96 M 年中的月份 Month July; Jul; 07 w 年中的周数 Number 27 W 月份中的周数 Number 2 D 年中的天数 Number 189 d 月份中的天数 Number 10 F 月份中的星期 Number 2 E 星期中的天数 Text Tuesday; Tue a Am/pm 标记 Text PM H 一天中的小时数Βιβλιοθήκη Baidu0-23) Number 0 k 一天中的小时数(1-24) Number 24 K am/pm 中的小时数(0-11) Number 0 h am/pm 中的小时数(1-12) Number 12 m 小时中的分钟数 Number 30 s 分钟中的秒数 Number 55 S 毫秒数 Number 978 z 时区 General time zone Pacific Standard Time; PST; GMT-08:00 Z 时区 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" 010704120856-0700 "yyyy-MM-dd'T'HH:mm:ss.SSSZ" 2001-07-04T12:08:56.235-0700
Date类
Date 类
Date 类表示日期和时间 提供操纵日期和时间各组成部分的方法 Date 类的最佳应用之一是获取系统当前时间 获取系统当前时间是一个长整型数据Long, 表示的是从GMT( 格林尼治标准时间)1970年, 1 月 1日00:00:00这一刻之前或者 是之后经历的毫秒数.
DateFormat
Calendar(GregorianCalendar)操作方法 操作方法 1. cal.set(2018, 3, 2); //设置年月日 SimpleDateFormat d = new SimpleDateFormat("yyyy-MM-dd"); System.out.println(d.format(cal.getTime())); 2. cal.add(Calendar.YEAR, 2); //年上加2年
SimpleDateFormat 功能:完成日期的显示格式化
只要通过向SimpleDateFormat 的构造函数传递格式字符串“EEEE-MM-dd-yyyy", 我们就能够指明自己想要的格式. 然后调用DateForma(Date date)方法,得到想 要的格式。 EEEE是星期, MM是月, dd是日, yyyy是年. 字符的个数决定了日期是如何格式 化的.传递"EE-MM-dd-yyyy"会显示 星期五-02-27-2009
练习 求两个日期之间相隔的天数 写一个方法(例如:d.fun3("2010-09-20","2010-09-21") ),求 输入的字符串2010-09-20 与 2010-09-21 之间相隔的天数
Calendar 类
我们现在已经能够格式化并创建一个日期对象了, 但 是我们如何才能设置和获取日期数据的特定部分呢, 比如说小时, 日, 或者分钟? 我们又如何在日期的这些 部分加上或者减去值呢? 答案是使用Calendar 类.这个 类也是一个抽象类,它有一个子类GregorianCalendar ,接下来我会利用这个子类来演示这个过程,请看 以下代码 使用GregorianCalendar类获取时间相关信息 calendar.get(Calendar.YEAR) 获取年 calendar.get(Calendar.MONTH) + 1) 获取月
相关文档
最新文档