一、DateUtils常用方法

 

1.1.常用的日期判断

  • isSameDay(final Date date1, final Date date2):判断两个时间是否是同一天
  • isSameInstant(final Date date1, final Date date2):判断两个时间是否为同一毫秒

常用的时间判断示例代码

DateUtils.isSameDay(new Date(),new Date());
DateUtils.isSameInstant(new Date(), new Date());

  

 

1.2.日期的基本操作

String转Date

parseDate(final String str, final Locale locale, final String... parsePatterns) throws ParseException

 DateUtils.parseDate("20181223 12:34:23",  Locale.TRADITIONAL_CHINESE,"yyyy-MM-dd HH:mm:ss");

Date转String

可以使用DateFormatUtils.format()方法

DateFormatUtils.format(new Date(),"yyyy-MM-dd HH:mm:ss");

日期加减

addYears(final Date date, final int amount),对日期进行加减年分操作,amount为正数表示加,负数表示减。同理,还有addMonths加减月份,addDays加减日,addWeeks加减周,addHours加减小时,addMinutes加减分钟等方法,具体使用可以参看源码。

Date date = DateUtils.addYears(new Date(), 3);

日期设置

setYears(final Date date, final int amount),给指定的日期设置指定的年份,同理,setMonths设置月份,setDays设置日,setHours设置小时等等方法。

Date date1 = DateUtils.setYears(new Date(), 2018);

日期四舍五入

round(final Date date, final int field),将指定的日期中指定的部分四舍五入,四舍五入的 常量有Calendar.YEARCalendar.MONTHCalendar.HOUR_OF_DAYCalendar.DAY_OF_MONTHCalendar.HOURCalendar.MINUTE等;

/*当前时间:2018-11-25 00:50:57,结果为:2019-01-01 00:00:00*/
Date round = DateUtils.round(new Date(), Calendar.YEAR);

日期截取

truncate(final Date date, final int field)round差距在于不会四舍五入,截取的常量字段有Calendar.YEARCalendar.MONTHCalendar.HOUR_OF_DAYCalendar.DAY_OF_MONTHCalendar.HOURCalendar.MINUTE等。

/*当前时间:2018-11-25 00:58:03 ,结果为:2018-01-01 00:00:00*/
Date truncate = DateUtils.truncate(new Date(), Calendar.YEAR);

获取指定时间的天数

getFragmentInDays(final Date date, final int fragment)获取指定时间的天数,fragment可以是Calendar.YEAR获取年已经过了多少天,同理,Calendar.MONTH月份过去了多少天,当然还有getFragmentInSeconds过去多少秒,getFragmentInMinutes过去多少分钟,getFragmentInHours过去多少小时等。

/*当前时间:2018-11-25 00:58:03 ,结果为:329*/
long fragmentInDays = DateUtils.getFragmentInDays(new Date(), Calendar.YEAR);

比较日历字段是否相等

truncatedEquals(final Date date1, final Date date2, final int field)可以比较年,月,日等日历字段。

boolean b = DateUtils.truncatedEquals(new Date(), new Date(), Calendar.YEAR);
 

DateUtils常用方法的更多相关文章

  1. 前端开发:Javascript中的数组,常用方法解析

    前端开发:Javascript中的数组,常用方法解析 前言 Array是Javascript构成的一个重要的部分,它可以用来存储字符串.对象.函数.Number,它是非常强大的.因此深入了解Array ...

  2. Jquery元素选取、常用方法

    一:常用的选择器:(李昌辉) 基本选择器 $("#myDiv") //匹配唯一的具有此id值的元素 $("div") //匹配指定名称的所有元素 $(" ...

  3. python浅谈正则的常用方法

    python浅谈正则的常用方法覆盖范围70%以上 上一次很多朋友写文字屏蔽说到要用正则表达,其实不是我不想用(我正则用得不是很多,看过我之前爬虫的都知道,我直接用BeautifulSoup的网页标签去 ...

  4. C# Webbrowser 常用方法及多线程调用

    设置控件的值 /// <summary> /// 根据ID,NAME双重判断并设置值 /// </summary> /// <param name="tagNa ...

  5. list,tuple,dict,set常用方法

    Python中list,tuple,dict,set常用方法 collections模块提供的其它有用扩展类型 from collections import Counter from collect ...

  6. DateUtils 学习记录1

    开发过程中很多时候都需要处理各种各样的日期..有些项目可能还会有自己的DateUtil.... 其实apache commons lang3有一个很好用的日期处理工具类,叫DateUtils... 基 ...

  7. 记录yii2-imagine几个常用方法

    记录yii2-imagine几个常用方法: //压缩 Image::thumbnail('@webroot/img/test-image.jpg', 120, 120)->save(Yii::g ...

  8. DOM常用方法总结

    DOM(Document Object Model:文档对象模型)为javascript中的一部分,它为访问和修改html文档或xml文档提供了一些编程接口,DOM以对象的形式来描述文档中的内容,以树 ...

  9. JSP内置对象及常用方法

    jsp九大内置对象及四个作用域: 何为作用域 先让我们看看效果: 大概流程是这样的,我们访问index.jsp的时候,分别对pageContext, request, session,applicat ...

随机推荐

  1. Spring MVC @ResponseBody和@RequestBody使用

    @ResponseBody用法: 作用:该注解用于将Controller的方法返回的对象,根据HTTP Request Header的Accept的内容,通过适当的HttpMessageConvert ...

  2. postman 获取时间戳的方法 和md5加密的方法

    获取时间戳方法: postman.setGlobalVariable("timestamp",Math.round(new Date().getTime()));   这整句是获取 ...

  3. JVM体系结构之三:方法区之2(jdk1.6,jdk1.7,jdk1.8下的方法区变迁)

    方法区 方法区存储虚拟机加载的类信息,常量,静态变量,即时编译器编译后的代码等数据.HotSpot中也称为永久代(Permanent Generation),(存储的是除了Java应用程序创建的对象之 ...

  4. 学习笔记之C++入门到精通(名师教学·手把手教会)【职坐标】_腾讯课堂

    C++入门到精通(名师教学·手把手教会)[职坐标]_腾讯课堂 https://ke.qq.com/course/101465#term_id=100105503 https://github.com/ ...

  5. [C#][Log4Net] 配置

    <?xml version="1.0" encoding="utf-8" ?> <configuration> <configSe ...

  6. user_add示例

    #!/usr/bin/python3# -*- coding: utf-8 -*-# @Time    : 2018/5/28 16:51# @File    : use_test_add.py 数据 ...

  7. Building a Simple User Interface(创建一个简单的用户界面)

    对于一个android 应用程序,用户的图形界面通常是由View(视图)和ViewGroup(视图组)对象构成的层次结构. View(视图)对象通常是按钮或文本输入框这类UI小部件,ViewGroup ...

  8. curl获取响应时间

    1.开启gzip请求curl -I http://www.sina.com.cn/ -H Accept-Encoding:gzip,defalte 2.监控网页的响应时间curl -o /dev/nu ...

  9. oracle创建新数据库

    oracle创建新数据库 look here http://www.cnblogs.com/phoenixzq/p/3510854.html windows start menu>Oracle& ...

  10. android run/debug configurations时报错Cannot reload AVD list:

    问题:配置Android的run/debug configurations时报错Cannot reload AVD list: cvc-enumeration-valid: Value '280dpi ...