Calender与Date
来源:互联网 发布:anywhere软件源网址 编辑:程序博客网 时间:2024/04/28 17:30
1.roll和add:
今天在使用Calender这个工具类的时候,发现使用roll()方法不能改变年数。
测试:
public static void main(String[] args) {Calendar ca = Calendar.getInstance();System.out.println(ca.getTime());ca.roll(Calendar.DAY_OF_YEAR, 20);System.out.println(ca.getTime());}
效果:
本来想的是获得2014的一月12号,但是却得到是2013年的,是为啥呢??
然后,我们来看jdk的说法吧。
roll:向指定日历字段添加指定(有符号的)时间量,不更改更大的字段。
意思是说,不能改变当前设定的最大时间字段,比如设定的是day of week ,那么只能在这周内取值,设定的是day of month,就只能在本月内取值。
如果想改变那个最大时间段,就得用另外的方法。
add (int field ,int amount): 根据日历的规则,为给定的日历字段添加或减去指定的时间量.
这个方法就不存咋设定那个时间段不能改变。
测试:
public static void main(String[] args) {Calendar ca = Calendar.getInstance();System.out.println(ca.getTime());ca.add(Calendar.DAY_OF_YEAR,10 );System.out.println(ca.getTime());}
效果:
注意:
1.roll :
是在给定的时间段内,循环直到获取到该时间段内的值。
2.day of week in month:指定当前月中的第几个星期,不是哪天。
3.改变小时:
java.text.DateFormat sdf = new SimpleDateFormat( "yyyy-MM-dd HH:mm:ss"); Calendar ca = Calendar.getInstance(); ca.add(Calendar.DAY_OF_YEAR, 3); ca.set(Calendar.HOUR_OF_DAY, 05); ca.set(Calendar.MINUTE, 20); System.out.println(sdf.format(ca.getTime()));
效果:
2014-08-10 05:20:03
2.日期格式化:
24小时时间格式:
Date cur = new Date();java.text.DateFormat form=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss aaa");System.out.println(form.format(cur.getTime()));
效果:
2014-08-07 14:29:33 下午
12小时时间格式:
Date cur = new Date();java.text.DateFormat form=new SimpleDateFormat("yyyy-MM-dd hh:mm:ss aaa");System.out.println(form.format(cur.getTime()));
效果:
2014-08-07 02:49:18 下午
可截取自己需要的时间段,如:
Date cur = new Date();java.text.DateFormat form=new SimpleDateFormat("MM.dd hh:mm aaa");System.out.println(form.format(cur.getTime()));
效果:
08.07 02:58 下午
为了便于url传输,需要将空格转为asic码:
例如:
java.text.DateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");Calendar ca = Calendar.getInstance();ca.add(Calendar.DAY_OF_YEAR, 3);ca.set(Calendar.HOUR_OF_DAY, 05);ca.set(Calendar.MINUTE, 20);System.out.println(sdf.format(ca.getTime()).replace(" ", "%20"));
效果:
2014-08-10%2005:20:39
0 0
- Calender与Date
- Date 与 calender
- date/calender
- Java的Date类与Calender类的比较
- Date, Calender, SimpleDateFormat
- Date Calender的问题
- Date、Calender、DateFormat
- 时间处理 Date Calender
- Date、Calender和SimpleDateFormat类
- 日期操作方法(总结Date,Calender类)
- 关于Date和Calender的区别
- Java Date类 Calender类 比较
- 日期操作方法(总结Date,Calender类)
- 几个类System ,Runtime,Date,Calender,Math
- day20_System+Runtime+Math+Date+Calender+IO流
- JAVA API Date SimpleDateFormat and Calender
- java/System/BigInteger/BigDecimal/Date/Calender
- Date、SimpleDateFormat日期类和Calender类
- HDU 2199 Can you solve this equation? && NYOJ 503 解方程
- node模拟http服务器session机制-我们到底能走多远系列(36)
- 黑马程序员 02 运算符,判断,循环
- android activity详解三:保存activity的状态
- 4、xcode基本资料、模拟器介绍、SandBox-OC+UI
- Calender与Date
- android 中如何分析内存泄漏
- Linux系统服务 4 ---- 启动流程+模块管理与loader
- android activity详解四:保存activity的状态的更多事项
- 嵌入式Linux之我行——u-boot-2009.08在2440上的移植详解(一)
- [iOS]网络编程专题:Reachability的使用
- Github-Client(ANDROID)开源之旅(一) ------ 初探GitHub
- tomcat配置虚拟目录
- 有效控制Android应用程序的耗电量