java中日期和时间类.docx_第1页
java中日期和时间类.docx_第2页
java中日期和时间类.docx_第3页
java中日期和时间类.docx_第4页
java中日期和时间类.docx_第5页
已阅读5页,还剩3页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

具体类(和抽象类相对)java.util.Date抽象类java.text.DateFormat 和它的一个具体子类,java.text.SimpleDateFormat抽象类java.util.Calendar 和它的一个具体子类,java.util.GregorianCalendar具体类可以被实例化, 但是抽象类却不能. 你首先必须实现抽象类的一个具体子类。 Date类:Date类实际上只是一个包裹类, 它包含的是一个长整型数据, 表示的是从GMT(格林尼治标准时间)1970年, 1月1日00:00:00这一刻之前或者是之后经历的毫秒数。Date类常用的两个构造函数:Date()无参数的构造函数创建的对象可以获取本地当前时间。Date(long time)使用一个从GMT(格林尼治标准时间)1970年, 1月1日00:00:00这一刻之前或者是之后经历的毫秒数创建一个Date对象Date示例:Date date = new Date();System.out.println(date.getTime();/1228061164796System.out.println(date.toString();/Mon Dec 01 00:06:04 CST 2008日期数据的定制格式:(DateFormat类、SimpleDateFormat类)为了定制日期数据的输出格式,我们可以使用DateFormat的子类SimpleDateFormat。SimpleDateFormat有个常用构造方法:public SimpleDateFormat(String pattern)/pattern指定输出格式pattern中可以有如下格式符:y,yy:用2位数字表示的年替换。yyyy:用4位数字表示的年替换。M,MM:用2位数字表示的月替换。MMM:用汉字表示的月替换。d,dd:用2位数字表示的日替换。H,HH:用2位数字表示的时替换。m,mm:用2位数字表示的分替换。s,ss:用2位数字表示的秒替换。E:用星期替换pattern中的普通ASCII字符,必须用单引号“”字符括起来,如:pattern=time:yyyy-MM-dd;用SimpleDateFormat对象调用如下方法可以定制某时间输出格式:public String format(Date date)实例:SimpleDateFormat sdf = new SimpleDateFormat( time:yyyy-MM-dd);System.out.println(sdf.format(date);/ time:2008-12-01假如我们由一个文本字符串包含一个格式化了的日期对象,现在从这个字符串中解析日期数据创建一个日期对象。使用SimpleDateFormat对象调用如下函数创建一个Date对象:Date java.text.DateFormat.parse(String source)实例:String str=2008-12-1;SimpleDateFormat sdf = new SimpleDateFormat(yyyy-MM-dd);tryDate date=sdf.parse(str);System.out.println(date);/Mon Dec 01 00:00:00 CST 2008catch(Exception ex)System.out.println(ex.getMessage();使用标准的日期格式化过程:常用的两个获取日期/时间格式器的方法:public static final DateFormat getDateTimeInstance()/具有默认语言环境的默认格式化风格。public static final DateFormat getDateTimeInstance(int dateStyle, int timeStyle)/具有默认语言环境的给定日期和时间格式化风格。实例:Date date = new Date();DateFormat shortDateFormat = DateFormat.getDateTimeInstance(DateFormat.SHORT, DateFormat.SHORT);DateFormat mediumDateFormat = DateFormat.getDateTimeInstance(DateFormat.MEDIUM, DateFormat.MEDIUM);DateFormat longDateFormat = DateFormat.getDateTimeInstance(DateFormat.LONG, DateFormat.LONG);DateFormat fullDateFormat = DateFormat.getDateTimeInstance(DateFormat.FULL, DateFormat.FULL);System.out.println(shortDateFormat.format(date); /08-12-1 下午1:28System.out.println(mediumDateFormat.format(date); /2008-12-1 13:28:31System.out.println(longDateFormat.format(date); /2008年12月1日 下午01时28分31秒System.out.println(fullDateFormat.format(date); /2008年12月1日 星期一 下午01时28分31秒 CSTCalendar类:使用Date类可以创建日期/时间对象,使用DateFormat类,SimpleDateFormat类可以对Date对象进行格式化。使用Calendar类可以设置和获取日期/时间数据的特定部分。Calendar类是抽象类不能实例化对象,但是可以使用Calendar类的static方法getInstance(),可以初始化一个日历对象。如:Calendar calendar = Calendar.getInstance();然后可以使用该calendar对象可以调用方法,如:(当year取负数时表示公元前)public final void set(int year, int month, int date)public final void set(int year, int month, int date, int hourOfDay, int minute)public final void set(int year, int month, int date, int hourOfDay, int minute, int second)Calendar类对象调用如下方法可以获取有关年份,月份,小时,星期等信息,参数field的有效值由Calendar的静态常量指定public int get(int field)实例:calendar.get(Calendar.MONTH);/返回一个整数,如果该整数是0表示一月,11表示12月Calendar对象调用如下方法可以把时间表示为毫秒:public long getTimeInMillis()Calendar使用实例:Calendar calendar = Calendar.getInstance();calendar.setTime(new Date();String 年 = String.valueOf(calendar.get(YEAR),月 = String.valueOf(calendar.get(MONTH)+1),日 = String.valueOf(calendar.get(DAY_OF_MONTH),星期 = String.valueOf(calendar.get(DAY_OF_WEEK)-1);int hour = calendar.get(HOUR_OF_DAY),minute = calendar.get(MINUTE),second = calendar.get(SECOND);System.out.println(现在的时间是:);System.out.println(年+年+月+月+日+日+星期+星期);System.out.println(hour+时+minute+分+second+秒);calendar.set(2004,7,8);/将日历翻到2004年8月8日,注意7表示八月long time2004 = calendar.getTimeInMillis();calendar.set(2008,7,8);/将日历翻到2008年8月8日long tim

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论