【javaSE】Date和Calendar类

2.1 Date类及常用方法

java.util.Date类用于封装日期和时间信息。目前Date类的大多数用于进行时间分量计算的方法已经被Calendar取代。

无参的构造方法,构造的Date对象封装当前的日期和时间信息

Date date=new Date();

Date类已经重新了toString对象

getTime()方法:获取1970年1月1日距今的毫秒数,例如

long time=date.getTime();

setTime()方法通过毫秒数设置Date对象的时间,例如

date.setTime(date.getTime()+ 24*60 *60*1000);

2.2 SimpleDateFormat类

java.text.SimpleDateFormat类用于实现Date对象和字符串表示的日期信息直接的转换。其构造方法为:

SimpleDateFormate sdf=new SimpleDateFormat(“yyyy-MM-dd”)

Date date=new Date();

SimpleDateFormat的format方法用于将日期数据按照指定的格式转换为字符串

2.2.1 parse方法

parse方法用于按照特定格式将表示时间的字符串转换为Date对象。例如:

String dateStr=”2013-01-06”

SimpleDateFormate sdf=new SimpleDateFormat(“yyyy-MM-dd”);

Date date=sdf.parse(dateStr);

2.2.2 常用格式字符串

年: yyyy, yy

月:MM

日:dd

星期:E 可用值或者参数:Sun,

上午:a 可用值后者参数为:PM,AM

24小时制:HH

12小时制:hh

分钟:mm

秒:ss

2.3 DateFormat类

DateFormat是SimpleDateFormat的父类,其工厂方法getXXXInstance可用返回不同地域的日期格式DateFormat对象,例如

DateFormart df2=DateFormat.getDateInstane(DateFormat.MEDIUM,Locale.CHINA);

String dateStr=df2.format(new Date());

2.4 Calendar类

java.util.Calendar类用于封装日历信息,其主要作用在于可用对时间分量进行运算。Calendar是抽象类,其具体自雷针对不同国家的日历系统,其中最广泛的的GregorianCalendar(格里高利历),例如

new GregorianCalendar(zone,aLocale);

通常使用Clendar的静态方法getInstance获得Calendar对象;getInstance方法根据系统的地域细心返回不同的Calenar类的实现

2.4.1 Calendar分量运算

Calendar通过set和get方法对各个世界分量进行设置和获取;时间分量包括:Calendar.YEAR, MOUNTH, DATE, DAY_OF_WEEK,
DAY_OF_YEAR, WEEK_OF_MOUTH,WEEK_OF_YEAR等待

例如:Calendar c=Calendar.getInstance();

c.set(Calendar.YEAR,2013)

c.set(Calendar.MOUNTH,Calendar.JANUARY);

c.set(Calendar.DATE,29);

注:Calendar对象自动适应,因为2月29日没有,自动变为3月1日

2.4.2 Calendar常用API

add方法对某个时间分量进行增加:

c.add(Calendar.MOUNTH,1);

getActualMaximum可以返回某个时间分量的最大值

c. getActualMaximum(Calendar.DATE)

时间: 2024-10-05 04:56:13

【javaSE】Date和Calendar类的相关文章

java Date和Calendar类

最近在无聊的看书,遇到一编程题目,问题描述如下: 黑色星期五源于西方迷信:耶稣基督死于星期五,而13也是一个不吉利的数字.黑色星期五即该日同时是星期五又是13号,求未来几年内这样的日子. 基于该问题会涉及到java中的关于时间类的部分,故尝试通过该题目总结现阶段的java Date和calendar类的问题. 一.Date类 查阅API文档可知,Date类源于jdk1.0版本,并在jdk1.1版本中其绝大多数方法被Calendar类中方法所代替.Date类构造函数public且未abstrct,

Java从零开始学三十一(DATE和Calendar类)

一.Date类 Date类是一个相对较为简单的操作类,在使用中直接使用java.util.Date类的构造方法并进行输出就可以得到一个完整的日期 二.Calendar类 Calendar类可以将取得的时间精确到毫秒.但是,这个类本身是一个抽象类,如果要想使用一个抽象类,则必须依靠对象的多态性,通过子类进行父类的实例化操作,Calendar的子类是GregorianCalendar类. package com.pb.demo3; import java.util.Calendar; import

时间日期处理date,Calendar类

1.         Date类(该类现在很少用了) l         Date类对象的创建: n         创建一个当前时间 //默认是创建一个代表系统当前日期的Date对象 Date d = new Date(); n         创建一个我们指定的时间的Date对象: 下面是使用带参数的构造方法,可以构造指定日期的Date类对象,Date类中年份的参数应该是实际需要代表的年份减去1900,实际需要代表的月份减去1以后的值. //创建一个代表2009年6月12号的Date对象 D

Date、Calendar类

 时间和日期处理 在程序中,某个固定的时间代表的都是一个时间点,也就是一个时间的瞬间,例如2009年3月8日15点50分0秒,在实际的应用中,经常需要对于两个时间进行比较或计算时间之间的差值,这些功能在Java语言中都可以很方便的实现. 在Java语言中,时间的表达单位是毫秒.也就是说,Java语言中的时间处理可以精确到毫秒. 在Java语言中,表达时间的方式有两种:   a.绝对时间.以直观的形式来表达某个时间点,例如2009年10月10号0点0分0秒.使用这种形式表达时间,使用起来比较直观,

JavaSE核心之一:Date类、Calendar类、Math类、枚举;

1.Date类 1) java.util.Date类用于封装日期及时间信息,一般仅用它显示某个日期,不对他作任何操作处理,作处理用Calendar类,计算方便. 2) Date 类本质上拥有一个long fastTime属性的包装类,提供了很多属性和方法用于快速获取年月日.时分秒.而fastTime就是时间戳. 1 import java.util.Date; 2 3 public class Test1 { 4 public static void main(String[] args) {

Date类和Calendar类应用到计算活了多少天和判断闰年与平年

在javaSE阶段,Date类和Calendar类以后会经常用到 这两个类当中的一些常用方法 通过两个demo 进行学习和练习 要求如下:让用户自己输入yyyy-MM-dd 格式的年月日 然后得出到今天为止活了多少天 ,这里面用到SimpleDateFormat Scanner 代码如下 import java.text.ParseException;import java.text.SimpleDateFormat;import java.util.Date;import java.util.

Date、Calendar、DateFormat、SimpleDateFormat、Timer、TimerTask类

类 Date 在 JDK 1.1 之前,类 Date 有两个其他的函数.它允许把日期解释为年.月.日.小时.分钟和秒值. 它也允许格式化和解析日期字符串.不过,这些函数的 API 不易于实现国际化.从 JDK 1.1 开始,应 该使用 Calendar 类实现日期和时间字段之间转换,使用 DateFormat 类来格式化和解析日期字符串. Date 中的相应方法已废弃. Date() 分配 Date 对象并初始化此对象,以表示分配它的时间(精确到毫秒). Date(long date) 分配 D

Java Date类和Calendar类的一个控制台打印日期的小程序

Java Date类和Calendar类的一个打印日期的小程序,可以直接用. package com.boy.Idate.calendar; import java.text.ParseException; import java.text.SimpleDateFormat; import java.util.Calendar; import java.util.Date; /** * 控制台可视化日历 * @author 田硕 */ public class VisualCalendar {

java===Date,DateFormat,SimpleDateFormat,Calendar类

package 常用类.Date; import java.text.DateFormat; import java.text.ParseException; import java.text.SimpleDateFormat; import java.util.Date; /**月份从0-11的整数表示,0是一月,11是12月 * 日期对象-->毫秒值 getTime方法: * 原因:可以通过毫秒值来进行日期运算 * 毫秒值-->日期对象 setTime方法或者构造方法new Date(毫秒