Date类 java.util.Date包

  • 常用构造方法

    • Date():系统当前时间
    • Date(long time) :以标准基准时间,毫秒计生成时间
  • 常用方法

    • boolean after(Date when):测试此日期是否在指定日期(Date when)之后;
    • boolean before(Date when):测试此日期是否在指定日期之前;
    • int compareTo(Date anotherDate):比较两个日期顺序;(相等返回0,在anotherDate之前返回负数,在anotherDate之后返回正数);
    • boolean equals(Object object):比较两个日期的相等性(相同long值);
    • long getTime():得到标准基准时间的毫秒;
    • void setTime(long time):设置时间;
    public class DateDemo {public static void main(String[] args) {Date now = new Date();System.out.println(now);//Date -> Longlong nowLong = now.getTime();System.out.println(nowLong);//Long -> DateDate yesterday = new Date(nowLong-24*60*60*1000);System.out.println(yesterday);Date lastYear = new Date();long day = 24*60*60*1000; lastYear.setTime(nowLong-(365*day));System.out.println(lastYear);System.out.println(now.after(yesterday));System.out.println(now.before(yesterday));System.out.println(now.compareTo(yesterday));System.out.println(now.compareTo(now));System.out.println(lastYear.compareTo(now));System.out.println(lastYear.equals(now));System.out.println(now.equals(now));Date d1 = new Date();Date d2 = new Date();d1.setTime(d2.getTime());System.out.println(d1.equals(d2));}
    }

    SimpleDateFormat类 java.text.SimpleDateFormat包

  • 格式化日期:格式化字符:y :年、M:月、d:日、H:小时、m:分钟、s:秒、S:毫秒;

  • 常用构造方法

    • SimpleDateFormat(String format);
  • 常用方法

    • Date parse(String fromat):将字符串转换为Date类;
    • String format(Date time):将日期按照给定format格式转换为字符串;
    public class SimpleDateFormatDemo {public static void main(String[] args) {SimpleDateFormat sdf = new SimpleDateFormat("yyyy年MM月dd日 HH时mm分ss");String nowDateStr = sdf.format(new Date());System.out.println(nowDateStr);}
    }

Calendar类 java.util.Calendar包

  • 常用方法

    • static Caledar getInstance():获得Calendar实例;
    • set(Calendar.字段,int date):设置某个字段值;
    • add(Calendar.字段,int number):为某个字段增加一个值;
    • Date getTime():将Calendar转换为Date;
    • setTime(Date time):将Date转换为Calendar
    public class CalendarDemo {public static void main(String[] args) throws ParseException {//获得实例Calendar calendar = Calendar.getInstance();//设置某个字段的值calendar.set(Calendar.YEAR, 1946);//为某个字段加上一个值calendar.add(Calendar.YEAR, 3);//Calendar => DateDate date = calendar.getTime();System.out.println(date);calendar.set(Calendar.MONTH,Calendar.MARCH);System.out.println(calendar.getTime());//Date => CalendarCalendar c = Calendar.getInstance();SimpleDateFormat sdf = new SimpleDateFormat("yyyy");Date d = sdf.parse("1938");c.setTime(d);System.out.println(c.getTime());System.out.println(DateUtil.addDay(d, -3));System.out.println(DateUtil.format(c.getTime()));}
    }

时间工具类

package com.chinasofti.se.api.homework;import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;ndar.MONTH, monthes);return c1.gepublic class DateUtil {public static final String DATE_PATTERN = "yyyy-MM-dd HH:mm:ss";/*** 添加天数* @param date1* @param days* @return*/public static Date addDay(Date date1, int days) {Calendar c1 = Calendar.getInstance();c1.setTime(date1);c1.add(Calendar.DAY_OF_MONTH, days);return c1.getTime();    }/*** 添加月数* @param date1* @param monthes* @return*/public static Date addMonth(Date date1, int monthes) {Calendar c1 = Calendar.getInstance();c1.setTime(date1);c1.add(CaletTime(); }/*** 添加年数* @param date1* @param years* @return*/public static Date addYear(Date date1, int years) {Calendar c1 = Calendar.getInstance();c1.setTime(date1);c1.add(Calendar.YEAR, years);return c1.getTime();    }/*** 格式化日期* @param date* @return*/public static String formatDate(Date date){SimpleDateFormat sdf1 = new SimpleDateFormat("今天是yyyy年MM月dd日,还记得去年今日。。。");return sdf1.format(date);}public static String formatDate(Date date, String str){SimpleDateFormat sdf1 = new SimpleDateFormat(str);return sdf1.format(date);}public static String formatShort(Date date){SimpleDateFormat sdf1 = new SimpleDateFormat("MM-dd-yyyy  HH:mm:ss");return sdf1.format(date);}/*** 解析日期* @param dateString* @return * @throws ParseException */public static Date  parseCal(String dateString){SimpleDateFormat sdf2 = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");try {return sdf2.parse(dateString);} catch (ParseException e) {e.printStackTrace();}return null;}public static Date  parseCal(String dateString, String str){SimpleDateFormat sdf2 = new SimpleDateFormat(str);try {return sdf2.parse(dateString);} catch (ParseException e) {e.printStackTrace();}return null;}/*** 比较两个日期* @param date1* @param date2* @return*/public static Date compare(Date date1, Date date2){return (date1.compareTo(date2))>0?date1:date2;}/*** 计算两个日期相差的天数* @param date1* @param date2* @return*/public static long subduction(Date date1, Date date2){long day=24*60*60*1000;long l = date1.getTime()-date2.getTime();return Math.abs(l)/day;}
}

Java 时间日期API总结相关推荐

  1. Spring Boot和Feign中使用Java 8时间日期API(LocalDate等)的序列化问题

    LocalDate. LocalTime. LocalDateTime是Java 8开始提供的时间日期API,主要用来优化Java 8以前对于时间日期的处理操作.然而,我们在使用Spring Clou ...

  2. feign 序列化_Spring Boot和Feign中使用Java 8时间日期API(LocalDate等)的序列化问题...

    LocalDate.LocalTime.LocalDateTime是Java 8开始提供的时间日期API,主要用来优化Java 8以前对于时间日期的处理操作.然而,我们在使用Spring Boot或使 ...

  3. java8 - 新的时间日期API示例

    Java 8之前的库对时间和日期的支持非常不理想,不用担心,在Java 8中引入全新的时间和日期API,并且都是线程安全的 新时间日期API常用对象介绍 LocalDate: 表示没有时区的日期, L ...

  4. JDK8 after时间日期api

    参考:https://zq99299.github.io/java-tutorial/datetime/iso/   介绍   简介 为了解决这些问题并在JDK内核中提供更好的支持,针对Java SE ...

  5. JDK8新特性(五):JDK8时间日期API

    本文目录: 前言 1.旧版日期时间API存在的问题 2.新日期时间 API 介绍 3.用法介绍 1.JDK8 日期和时间类 2.JDK8 日期时间格式化与解析 3.JDK8 Instant 类 4.J ...

  6. java向MySQL插入当前时间的四种方式和java时间日期格式化的几种方法(案例说明)...

    转载地址:http://www.devba.com/index.php/archives/4581.html java向MySQL插入当前时间的四种方式和java时间日期格式化的几种方法(案例说明); ...

  7. java时间,日期,毫秒值,String的相互转换总结

    java时间日期的各种转换总结以及应用实例 由于工作中经常要用到时间,日期,以及当前时间的毫秒值等 很多时候涉及到了它们之间的相互转换,今天就好好的总结一下. 首先基本介绍一下java中有关时间,日期 ...

  8. mysql java 日期格式化_(转)java向MySQL插入当前时间的四种方式和java时间日期格式化的几种方法(案例说明)...

    java向MySQL插入当前时间的四种方式和java时间日期格式化的几种方法(案例说明);部分资料参考网络资源 1. java向MySQL插入当前时间的四种方式 第一种:将java.util.Date ...

  9. java时间日期格式化和JDBC中的处理

    java时间日期格式化和JDBC中的处理 时间格式化类 SimpleDateFormat类 字符串格式化为时间对象 .parse()方法 时间对象格式化为字符串 .format()方法 DateTim ...

最新文章

  1. antd Tree 展开和默认选中
  2. Linux中变量#,#,@,0,0,1,2,2,*,$$,$?的含义
  3. Shell命令-管理与性能监视之strace、ltrace
  4. Spring Cloud构建微服务架构(二)服务消费者
  5. es创建索引库,无法使用InetSocketTransportAddress
  6. python客户端修改session_python中flask的Session设置的方法介绍
  7. C语言:--位域和内存对齐
  8. css实现鼠标覆盖显示大图
  9. Android 平台电容式触摸屏的驱动基本原理
  10. 三维数据平滑处理_黑白象片的密度信息 卫星数据处理 遥感制图 三维建模 善图科技...
  11. 看看别人用什么:最佳网管工具点评
  12. 图解DbgView使用
  13. 流媒体RTMP协议解析
  14. 微信朋友圈限时推广微视,腾讯对短视频志在必得?
  15. 在Win7上安装TexLive及设置XeLaTeX的整个过程
  16. 3d设计计算机配置,专业设计师选什么电脑配置?2018年专业3D建模渲染电脑配置推荐(2)...
  17. 一文数学数模-相关性分析(二)斯皮尔曼相关(spearman)相关性分析一文详解+python实例代码
  18. Initramfs unpacking failed:junk in compressed archive
  19. 报表增删改开发过程中知识整合
  20. 不得不说的SD2.0

热门文章

  1. 如何修改 Kubernetes 节点 IP 地址?
  2. 背景差法目标识别python_运动目标检测(4)—背景差分法
  3. 你同学都身价上亿了,你还在纠结早晨几点能起床
  4. PyQt(Python+Qt)学习随笔:QTreeWidgetItem项列图标的访问方法
  5. hbase和es在搜索场景的应用
  6. 8583协议深入理解 1
  7. revit模型怎么在手机上看_e建筑手机版下载-e建筑(轻松查看CAD图纸和BIM模型)1.2.4 官方苹果版-东坡下载...
  8. JDBC与ODBC的区别与应用
  9. 捕捉“五一劳动节”海报设计灵感
  10. 单片机红绿灯加强版(kile仿真程序和protues硬件仿真)