java时间处理
2014-03-18 13:18
134 查看
使用Calendar根据当前日期算前一年、前一月、前一天
本来想用SimpleDateFormat根据当前日期计算前一年、前一月、前一天的日期,发现用这个挺麻烦的,后来发现使用Calendar还是挺方便的。Calendar中有个核心的方法:add(int field,int amount),用起来很简单。
Calendar ca = Calendar.getInstance();// 得到一个Calendar的实例
//ca.setTime(new Date()); // 设置时间为当前时间
ca.set(2011, 11, 17);// 月份是从0开始的,所以11表示12月
ca.add(Calendar.YEAR, -1); // 年份减1
ca.add(Calendar.MONTH, -1);// 月份减1
ca.add(Calendar.DATE, -1);// 日期减1
Date resultDate = ca.getTime(); // 结果
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
System.out.println(sdf.format(resultDate));
Calendar ca = Calendar.getInstance();// 得到一个Calendar的实例 //ca.setTime(new Date()); // 设置时间为当前时间 ca.set(2011, 11, 17);// 月份是从0开始的,所以11表示12月 ca.add(Calendar.YEAR, -1); // 年份减1 ca.add(Calendar.MONTH, -1);// 月份减1 ca.add(Calendar.DATE, -1);// 日期减1 Date resultDate = ca.getTime(); // 结果 SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd"); System.out.println(sdf.format(resultDate));
从上面的代码发现Calendar配合SImpleDateFormat来使用还是很方便的。
时间与string转化
String str="2010-5-27";
SimpleDateFormat sdf= new SimpleDateFormat("yyyy-MM-dd");
Date date =sdf.parse(str);
Calendar calendar = Calendar.getInstance();
calendar.setTime(date);
获取年 获取月
Integer year = g.get(Calendar.YEAR);
Integer month=g.get(Calendar.MONTH)
比较时间的大小
Date d = sdf.parse(myString);
boolean flag = d.before(nowdate);
if(flag)
System.out.print("早于今天")
else
System.out.print("晚于今天")
相关文章推荐
- Java——时间和日期处理
- JAVA中的时间处理
- Java的时间处理
- Java mysql jsp 时间对象的显示与处理
- Java日期处理——字符串转换为日期时间
- S dc7e pringMVC 返回Java8 时间JSON数据的格式化问题处理
- JAVA 处理时间
- java日期时间处理工具类封装
- Java中的时间日期处理(相当精彩!)
- java处理日期时间 相加减大全
- Java处理时间问题
- Java时间操作(一):关于UTC格式时间处理
- 如何在Java 8中愉快地处理日期和时间
- Java技术时间格式化处理工具类
- java日期时间处理
- java时间操作处理
- java 处理时间问题
- Java时间处理(...年前、...天前、...小时前)
- java时间的处理
- java 处理系统时间(转载)