ImageVerifierCode 换一换
格式:DOCX , 页数:25 ,大小:326.45KB ,
资源ID:21507224      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/21507224.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(JAVA面试题解惑系列日期和时间的处理Word文档格式.docx)为本站会员(b****5)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

JAVA面试题解惑系列日期和时间的处理Word文档格式.docx

1、请看下面的例子:Java代码 1.import 2.import 3.import 4.import 5.6.public class DateTest 7./*8.*以一种较为友好的方式格式化日期时间值 9.*10.*param c 11.*日期时间对象 12.*return 格式化后的日期时间字符串 13.*/14.public static String toFriendlyString(Calendar c)15.if(c!=null)16.DateFormat df=new SimpleDateFormat(yyyy年 MM 月 dd日 HH:mm:ss);17.return();1

2、8.19.return null;20.21.22.public static void main(String args)23.Calendar c1=();24.创建方式:();25.日期时间:+(c1);26.27.28.Calendar c2=new GregorianCalendar();29.创建方式:new GregorianCalendar();30.日期时间:+(c2);31.32.33./参数含义依次为:年、月、日 34.Calendar c3=new GregorianCalendar(2008,8,8);35.创建方式:new GregorianCalendar(200

3、8,8,8);36.日期时间:+(c3);37.38.39./参数含义依次为:年、月、日、时、分 40.Calendar c4=new GregorianCalendar(2008,8,8,6,10);41.创建方式:new GregorianCalendar(2008,8,8,6,10);42.日期时间:+(c4);43.44.45./参数含义依次为:年、月、日、时、分、秒 46.Calendar c5=new GregorianCalendar(2008,8,8,18,10,5);47.创建方式:new GregorianCalendar(2008,8,8,18,10,5);48.日期时间

4、:+(c5);49.50.import class DateTest /*以一种较为友好的方式格式化日期时间值 *param c *日期时间对象 *return 格式化后的日期时间字符串 */public static String toFriendlyString(Calendar c)if(c!=null)DateFormat df=new SimpleDateFormat(yyyy 年 MM 月 dd 日 HH:return();return null;public static void main(String args)Calendar c1=();创建方式:日期时间:Calenda

5、r c2=new GregorianCalendar();/参数含义依次为:年、月、日 Calendar c3=new GregorianCalendar(2008,8,8);年、月、日、时、分 Calendar c4=new GregorianCalendar(2008,8,8,6,10);年、月、日、时、分、秒 Calendar c5=new GregorianCalendar(2008,8,8,18,10,5);运行结果如下:1.创建方式:()2.日期时间:2008 年 07 月 22日 11:54:48 3.4.创建方式:new GregorianCalendar()5.日期时间:48

6、 6.7.创建方式:new GregorianCalendar(2008,8,8.日期时间:2008 年 09 月 08日 00:00 9.10.创建方式:new GregorianCalendar(2008,8,8,6,10)11.日期时间:2008 年 09 月 08日 06:10:00 12.13.创建方式:new GregorianCalendar(2008,8,8,18,10,5)14.日期时间:2008 年 09 月 08日 18:05 为了便于阅读,我们增加一个 toFriendlyString(Calendar c)方法,它将日期时间值格式化为一种更加友好易懂的形式,我们将在接

7、下来的内容中讲解它的实现原理。分析运行结果后,我们发现有两个地方需要注意:1.在创建 GregorianCalendar 对象时,月份值都设定为 8,但打印结果都是 9月份。这并不是我们的代码有问题,而是因为 JAVA表示的月份是从 0 开始的,也就是说它用来表示月份的数值总是比实际月份值小 1。因此我们要表示 8 月份,就是应该设置 8-1=7 这个值。2.GregorianCalendar 的小时数是 24小时制的。为了避免出现因为忘记处理 1的差值而设置了错误的月份,也让代码看起来更加直观,推荐大家使用定义在 Calendar类的的这些常量来代替直接用数字表示月份:一月:=0 二月:=1

8、 三月:=2 四月:=3 五月:=4 六月:=5 七月:=6 八月:=7 九月:=8 十月:=9 十一月:=10 十二月:=11 如果我们想要从 Calendar 对象获得各种属性的值,就需要调用它的 get(int field)方法,这个方法接收一个 int 型的参数,并且根据这个给定参数的值来返回相应的属性的值。该方法的定义如下:Java代码 1.public int get(int field)2./other code 3.public int get(int field)/other code 我们以一个示例来说明 get(int field)方法所能接受的一些常用参数的含义及用法:

9、Java代码 1.import 2.import 3.import 4.5.public class DateTest 6./*7.*以一种较为友好的方式格式化日期时间值 8.*9.*param c 10.*日期时间对象 11.*return 格式化后的日期时间字符串 12.*/13.public static String toFriendlyString(Calendar c)14.if(c!=null)15.DateFormat df=new SimpleDateFormat(yyyy年 MM 月 dd日 HH:);16.return();17.18.return null;19.20.

10、21.public static void main(String args)22.Calendar c=();23.当前时刻:+(c);24.25.26.属性名称:27.代表含义:上下午标识,上午返回=0,下午返回=1);28.测试结果:+);29.30.31.属性名称:32.代表含义:一个月中的第几天,同);33.测试结果:34.35.36.属性名称:37.代表含义:38.测试结果:39.40.41.属性名称:42.代表含义:一周中的第几天,对应星期几,第一天为星期日,于此类推。43.星期日:=1);44.星期一:=2);45.星期二:=3);46.星期三:=4);47.星期四:=5);4

11、8.星期五:=6);49.星期六:=7);50.测试结果:51.52.53.属性名称:54.代表含义:这一天所对应的星期几在该月中是第几次出现);55.测试结果:56.57.58.属性名称:59.代表含义:一年中的第几天);60.测试结果:61.62.63.属性名称:64.代表含义:12 小时制下的小时数,中午和午夜表示为 0);65.测试结果:66.67.68.属性名称:69.代表含义:24 小时制下的小时数,午夜表示为 0);70.测试结果:71.72.73.属性名称:74.代表含义:毫秒数);75.测试结果:76.77.78.属性名称:79.代表含义:分钟);80.测试结果:81.82.

12、83.属性名称:84.代表含义:月份,从 0 到 11表示 12 个月份,比实际月份值小 1);85.测试结果:86.87.88.属性名称:89.代表含义:秒);90.测试结果:91.92.93.属性名称:94.代表含义:一个月中的第几个星期);95.测试结果:96.97.98.属性名称:99.代表含义:一年中的第几个星期);100.测试结果:101.102.103.属性名称:104.代表含义:年份);105.测试结果:106.107.import class DateTest /*以一种较为友好的方式格式化日期时间值 *param c *日期时间对象 *return 格式化后的日期时间字符串

13、 */public static String toFriendlyString(Calendar c)if(c!public static void main(String args)Calendar c=();当前时刻:属性名称:代表含义:测试结果:星期日:星期一:星期二:星期三:星期四:星期五:星期六:12小时制下的小时数,中午和午夜表示为 0);24小时制下的小时数,午夜表示为 0);月份,从 0到 11 表示 12个月份,比实际月份值小 1);1.当前时刻:2008 年 07 月 22日 13:16:2.3.属性名称:4.代表含义:上下午标识,上午返回=0,下午返回=1 5.测试结果

14、:1 6.7.属性名称:8.代表含义:一个月中的第几天,同 9.测试结果:22 10.11.属性名称:12.代表含义:一个月中的第几天,同 13.测试结果:22 14.15.属性名称:16.代表含义:17.星期日:=1 18.星期一:=2 19.星期二:=3 20.星期三:=4 21.星期四:=5 22.星期五:=6 23.星期六:=7 24.测试结果:3 25.26.属性名称:这一天所对应的星期几在该月中是第几次出现 28.测试结果:4 29.30.属性名称:31.代表含义:一年中的第几天 32.测试结果:204 33.34.属性名称:35.代表含义:12小时制下的小时数,中午和午夜表示为

15、0 36.测试结果:1 37.38.属性名称:39.代表含义:24小时制下的小时数,午夜表示为 0 40.测试结果:13 41.42.属性名称:43.代表含义:毫秒数 44.测试结果:421 45.46.属性名称:47.代表含义:分钟 48.测试结果:16 49.50.属性名称:51.代表含义:月份,从 0到 11表示 12 个月份,比实际月份值小 1 52.测试结果:6 53.54.属性名称:55.代表含义:秒 56.测试结果:7 57.58.属性名称:一个月中的第几个星期 60.测试结果:4 61.62.属性名称:63.代表含义:一年中的第几个星期 64.测试结果:30 65.66.属性名

16、称:67.代表含义:年份 68.测试结果:2008 其中代表的含义比较难理解一些,它表示“这一天所对应的星期几在该月中是第几次出现”。比如 2008年 8月 8 日是星期五,在它之前的 8月 1 日也是星期五,因此它是8 月份的第二个星期五。所以这时调用 get 就会返回 2。这里存在一个简单易记的规律:对于每月的 1-7 号,它们一定占全了星期一到星期日,所以不管是它们中的哪一天,也不管这一天是星期几,它总是第一个,因此返回 1;8-14号也同样占全了星期一到星期日,但由于 1-7 号的关系,对于它们总是返回 2;以此类推,15-21号返回 3,22-28号返回 4,29-31 号返回 5。

17、Calendar对象和 Date对象可以通过 Calendar 类的如下两个方法进行相互转换:Java代码 1.public final Date getTime()2./other code 3.4.5.public final void setTime(Date date)6./other code 7.public final Date getTime()/other code public final void setTime(Date date)/other code 日期格式化与解析 我们回头再来看看在上面的例子中定义的 toFriendlyString(Calendar c)方法

18、,它将一个 Calendar对象的日期时间值以一种很友好的方式来展现,使人们很容易看懂,也符合我们中国人的习惯。这完全得益于抽象类 DateFormat 以及它的子类实体类SimpleDateFormat 的帮助。这两个类都位于包中,是专门用于日期格式化和解析的类。而这两项工作的核心就是我们为此设定的 Pattern,我们可以称之为“日期格式表达式”。理论上讲日期格式表达式包含全部 26个英文字母的大小写,不过它们中的一些字母只是被预留了,并没有确切的含义。目前有效的字母及它们所代表的含义如下:G:年代标识,表示是公元前还是公元后 y:年份 M:月份 d:日 h:小时,从 1到 12,分上下午

19、 H:小时,从 0到 23 m:分钟 s:秒 S:毫秒 E:一周中的第几天,对应星期几,第一天为星期日,于此类推 z:时区 D:一年中的第几天 F:这一天所对应的星期几在该月中是第几次出现 w:一年中的第几个星期 W:一个月中的第几个星期 a:上午/下午标识 k:小时,从 1到 24 K:小时,从 0到 11,区分上下午 在日期格式表达式中出现的所有字母,在进行日期格式化操作后,都将被其所代表的含义对应的属性值所替换,并且对某些字母来说,重复次数的不同,格式化后的结果也会有所不同。Java代码 1.import 2.import 3.4.public class DateTest 5.publ

20、ic static void main(String args)6./使用系统当前日期时间值创建一个 Date对象 7.Date now=new Date();8.9./创建一个日期格式表达式 10.String pattern=年代:G;年份:y;月份:M;日:d;时(112):h;时(023):H;分:m;秒:s;毫秒:S;星期:E;上/下午:a;时区:z;11./使用日期格式表达式创建一个 SimpleDateFormat 对象 12.SimpleDateFormat df=new SimpleDateFormat(pattern);13./调用 SimpleDateFormat 类的

21、format(Date date)方法对 Date 对象进行格式化,并返回格式化后的字符串。14./该方法继承自类 15.1位:+(now);16.17./创建一个新的日期格式表达式 18.pattern=年代:GG;yy;MM;dd;hh;HH;mm;ss;SS;EE;aa;zz;19./调用 SimpleDateFormat 的 applyPattern(String pattern)方法用新创建的日期格式表达式替换其原有的 20.(pattern);21.2位:22.23.pattern=年代:GGG;yyy;MMM;ddd;hhh;HHH;mmm;sss;SSS;EEE;aaa;zzz

22、;24.(pattern);25.3位:26.27.pattern=年代:GGGG;yyyy;MMMM;dddd;hhhh;HHHH;mmmm;ssss;SSSS;EEEE;aaaa;zzzz;28.(pattern);29.4位:30.31.pattern=年代:GGGGG;yyyyy;MMMMM;ddddd;hhhhh;HHHHH;mmmmm;sssss;SSSSS;EEEEE;aaaaa;zzzzz;32.(pattern);33.5位:34.35.pattern=年代:GGGGGG;yyyyyy;MMMMMM;dddddd;hhhhhh;HHHHHH;mmmmmm;ssssss;SSS

23、SSS;EEEEEE;aaaaaa;zzzzzz;36.(pattern);37.6位:38.39.import class DateTest public static void main(String args)/使用系统当前日期时间值创建一个 Date 对象 Date now=new Date();/创建一个日期格式表达式 String pattern=年代:/使用日期格式表达式创建一个 SimpleDateFormat 对象 SimpleDateFormat df=new SimpleDateFormat(pattern);/调用 SimpleDateFormat 类的 format(Date date)方法对 Date对象进行格式化,并返回格式化后的字符串。/该方法继承自类 1位:/创建一个新的日期格式表达式 pattern=年代:时(023

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1