集合框架(六)(续) 实用类:时间和日期处理类
2017-08-24 11:02
549 查看
时间和日期的处理方法:
日期类型与字符串转换:
方法的应用:
4000
显示
(2)毫秒转日期
(3)返回今天的日期
(4)返回当前日期加减后的日期
(5)返回指定日期的加减天数
(6)日期格式化
日期类型与字符串转换:
方法的应用:
//新建一个时间对象,默认是当前的时间 Date d = new Date(); System.out.println(d); //时间戳:从1970-1-1 00:00:00开始计数的时间毫秒数 Date d2 = new Date(System.currentTimeMillis()-24*60*60*1000); System.out.println(d2); System.out.println(System.currentTimeMillis()); //Calendar用法 Calendar cal = Calendar.getInstance(); //设置当前基准时间 cal.setTime(d); //手动设置时间 //set第一个参数:filed是设置的时间属性 //set第二个参数:value是设置的值(修改) cal.set(Calendar.DATE, 2); System.out.println(cal.getTime()); //add方法,增加或减少时间值 //增加(修改时间) //cal.add(Calendar.DATE, 2); //System.out.println(cal.getTime()); cal.set(Calendar.HOUR_OF_DAY, 13); System.out.println(cal.getTime()); //格式化时间 SimpleDateFormat sdf = new SimpleDateFormat("yyyy年MM月dd日 HH:mm:ss 今天是一年中的第D天"); String n = sdf.format(cal.getTime()); System.out.println(n);实例1:获取当前的时间,并以年-月-日方式
4000
显示
Date d = new Date(); SimpleDateFormat format = new SimpleDateFormat("今天是:yyyy-MM-dd"); System.out.println(format.format(d));2.小旭今天刚刚拍完写真,40天之后才能出底片,请问应该在哪天去取?(以年-月-日方式显示)
Calendar cal = Calendar.getInstance(); cal.add(Calendar.DAY_OF_MONTH, 40); SimpleDateFormat format2 = new SimpleDateFormat("\n小旭应该 yyyy-MM-dd 去取底片"); System.out.println(format2.format(cal.getTime()));3.求从1970年到2011年,共有多少个闰年
int j = 0; for(int i = 1970;i<=2011;i++){ GregorianCalendar gc = new GregorianCalendar(); boolean isLeapYear = gc.isLeapYear(i); if(isLeapYear){ j++; } } System.out.println("\n从1970年-2011年,共有"+j+"个闰年");4.(1)返回两个日期之间相差的天数
(2)毫秒转日期
(3)返回今天的日期
(4)返回当前日期加减后的日期
(5)返回指定日期的加减天数
(6)日期格式化
public class Ch05 { public static int twoDate(Date fDate,Date oDate){ Calendar aCalendar = Calendar.getInstance(); aCalendar.setTime(fDate); int day1 = aCalendar.get(Calendar.DAY_OF_YEAR); aCalendar.setTime(oDate); int day2 = aCalendar.get(Calendar.DAY_OF_YEAR); return day2 - day1; } public static void main(String[] args) throws ParseException { // TODO Auto-generated method stub //1.返回两个日期之间相差的天数 SimpleDateFormat format1 = new SimpleDateFormat("yyyy年MM月dd日"); Date date1 = format1.parse("2018年5月6日"); Date date2 = format1.parse("2018年7月15日"); System.out.println("第一个日期:"+format1.format(date1.getTime())); System.out.println("第二个日期:"+format1.format(date2.getTime())); Calendar cal11 = Calendar.getInstance(); Calendar cal12 = Calendar.getInstance(); cal11.setTime(date1); cal12.setTime(date2); Date fDate = cal11.getTime(); Date oDate = cal12.getTime(); System.out.println("两个日期相差的天数是:"+twoDate(fDate,oDate)+"天"); //2.毫秒转日期 Long l = 124445678996l; Date date = new Date(l); GregorianCalendar gc = new GregorianCalendar(); gc.setTime(date); SimpleDateFormat format = new SimpleDateFormat("yyyy年MM月dd日 HH:mm:ss"); String f = format.format(gc.getTime()); System.out.println("\n"+l+"毫秒转成日期是:"+f); //3.返回今天的日期 Date d2 = new Date(); SimpleDateFormat format2 = new SimpleDateFormat("yyyy年MM月dd日 HH:mm:ss"); String f2 = format.format(d2.getTime()); System.out.println("\n今天的日期是"+f2); //4.返回当前日期加减后的日期 Calendar cal = Calendar.getInstance(); Calendar cal1 = Calendar.getInstance(); cal.add(Calendar.DAY_OF_MONTH, 20); cal1.add(Calendar.DAY_OF_MONTH, -20); SimpleDateFormat format3 = new SimpleDateFormat("yyyy年MM月dd日"); System.out.println("\n当前日期加20天后的日期是:"+format3.format(cal.getTime())); System.out.println("当前日期减20天后的日期是:"+format3.format(cal1.getTime())); //5.返回指定日期的加减天数 SimpleDateFormat format5 = new SimpleDateFormat("yyyy年MM月dd日"); Date date5 = format5.parse("2017年5月6日"); System.out.println("\n初始化时间为:"+format5.format(date5.getTime())); Calendar cal5 = Calendar.getInstance(); Calendar cal6 = Calendar.getInstance(); cal5.setTime(date5); cal6.setTime(date5); cal5.add(Calendar.DAY_OF_YEAR, 25); cal6.add(Calendar.DAY_OF_MONTH, -25); // SimpleDateFormat format5 = new SimpleDateFormat("yyyy年MM月dd日"); System.out.println("当前日期加25天后的日期是:"+format5.format(cal5.getTime())); System.out.println("当前日期减25天后的日期是:"+format5.format(cal6.getTime())); //6.日期格式化 Date d3 = new Date(); System.out.println("\n当前时间(未格式化):"+d3); SimpleDateFormat format6 = new SimpleDateFormat("yyyy年MM月dd日 HH:mm:ss"); String f6 = format.format(d2.getTime()); System.out.println("当前时间(格式化后):"+f6); } }
相关文章推荐
- 集合框架(六) 实用类:包装类、String、Math、StringBuffer、Random、时间和日期处理类
- Python实用日期时间处理方法汇总
- Python实用日期时间处理方法汇总
- sql日期时间处理集合
- 处理日期和时间数据--单独使用日期和时间
- Java 时间与日期处理
- JAVA处理日期(Date)时间(Time)以及相关类的介绍
- 日期操作 、 集合框架
- FreeMarker中的日期时间处理
- JAVA实用日期时间操作类
- ruby 时间日期处理
- 对Flex日期时间与数据库传递日期时间的8小时时差处理
- Thinking in Java---使用Java处理日期和时间
- python 日期处理(日期间间隔时间)
- 分享一些日期、时间格式处理工具方法
- 40.Oracle数据库SQL开发之 日期和时间的存储与处理——使用TO_CHAR和TO_DATE
- SQL时间日期处理
- .NET 中日期和时间的格式化处理
- JS处理日期时间戳
- 25、Power Query-日期与时间数据处理