这里记录一下刚刚知道的Calendar的用法,这是从API文档里面看不到的,只有在用的时候,才会知道自己对Calender这个类有多么不熟悉。
首先是实例化类的时候吧,Calendar是一个抽象类,只能通过其下面的getInstance()方法来实现实例化。通过阅读源代码,发现返回的是一个sun.util.BuddhistCalendar类,很奇怪的是,跳不进这个类的源代码了。
从API上面来看,我们可以很容易拿到Calendar的MONTH,当然,这是没有很仔细阅读API解释的结果,我想。今天就是卡在了获得正确的“年”“月”“日”上面了,真不想其他人跟我一样,谷歌都搜不出来一些指导文章,就咬牙忍着肚子饿,写一篇文章先。
获得正确的年月日的方法:calendar.get(Calendar.MONTH); 这里,calendar是已经被实例的引用,而通过打印Calendar.MONTH可以看到,Calendar提供的静态常量如MONTH,YEAR,DATE,只是提供了一些类似下标作用的数字,YEAR是1,MONTH是2,如果没有记错的话。只有通过实例过的引用调用get()方法,才能正确地得到正确的日期。
获得当月第一天下标的方法:
Calendar cal_tmp = Calendar.getInstance();
cal_tmp.set(cal_tmp.get(Calendar.YEAR), cal_tmp.get(Calendar.MONTH),1);
int firstDayIndex = cal_tmp.get(Calendar.DAY_OF_WEEK);
就这一块方法,网上都很少资源。思想其实很简单,找一个临时的Calendar实例cal_tmp,把cal_tmp设置成当月的第一天cal_tmp.set(cal_tmp.get(Calendar.YEAR), cal_tmp.get(Calendar.MONTH),1); 最后通过这一天的日期来获得它在一个星期中的第几天。可能一般人想不到可以做什么,如果没有确切的需求的话。但是当你被要求日期计算要再后台完成的时候,你会发现这一个方法非常有必要知道。需求大致如下:通过json传递数据,用ajax方式,在后台计算完日期之后,在前台显示你想要的日历。
终于写完啦,可以吃饭了。
分享到:
相关推荐
JDK_API_1.6_zh_中文JDK_API_1.6_zh_中文JDK_API_1.6_zh_中文JDK_API_1.6_zh_中文JDK_API_1.6_zh_中文JDK_API_1.6_zh_中文
JDK_API_1.6中文版JDK_API_1.6中文版JDK_API_1.6中文版JDK_API_1.6中文版JDK_API_1.6中文版
JDK_API_1.6.CHM是一款jdk1.6中文版的API帮助文档,可以帮助正在使用java的用户们通过api及时查找到对应的类,接口,框架等详细信息的帮助手册。
压缩包中包括JDK_API_1.6中文版及j2se_1.6中文版,方便学习。
JDK_API_1.6 源码文档.chm...................................................................................................................
详细的中文JDK_API,对jdk中的各个类,接口,以及其中方法的详细描述
原生翻译java6中文开发文档JDK_1.6 JDK_1.6_API_zh_CN.CHM API 中文 高清完整CHM版
java的Api,java开发程序员必备的工具。中文版的 123
json.jar jdk_1.6 对应的开发
JDK1.6版本的API描述CHM文档。下载后解压得到CHM文件,直接打开即可。
Java环境jdk_1.6安装包,是exe文件安装包,win32位的,X64的也可以安装使用
Sun_JDK_1.6内存管理--实现篇-毕玄
JDK_API1.6中文版,JDK_API1.6中文版,JDK_API1.6中文版,JDK_API1.6中文版。
JDK_API_1.6_中文版本CHM
JDK_1.6 帮助文档 中文,不想看英文文档的,这个是个不错的选择
最新JDK_1.6中文帮助文档 欢迎下载