Java 时间日期API总结
2017-07-23 16:38
771 查看
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):设置时间;
SimpleDateFormat类 java.text.SimpleDateFormat包
格式化日期:格式化字符:y :年、M:月、d:日、H:小时、m:分钟、s:秒、S:毫秒;
常用构造方法
SimpleDateFormat(String format);
常用方法
Date parse(String fromat):将字符串转换为Date类;
String format(Date time):将日期按照给定format格式转换为字符串;
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
时间工具类
常用构造方法
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 -> Long long nowLong = now.getTime(); System.out.println(nowLong); //Long -> Date Date 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 => Date Date date = calendar.getTime(); System.out.println(date); calendar.set(Calendar.MONTH,Calendar.MARCH); System.out.println(calendar.getTime()); //Date => Calendar Calendar 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(); } 9ffa /** * 格式化日期 * @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知识点总结
- JAVA 8 新日期和时间API 学习总结
- java8 时间与日期api的总结与实例
- Java 8新的日期与时间API
- JAVA-近日遇到的java的日期时间类型的几个问题总结
- Java日期时间使用总结[转载]
- Java 8 日期/时间(Date Time)API指南
- Java日期时间使用总结
- Java 8时间和日期API 20例
- Java8中新增的日期和时间API
- Java日期时间使用总结
- Java 8时间和日期API 20例
- Java日期时间使用总结
- Java8 日期/时间(Date Time)API指南
- Java日期时间使用总结
- android或Java中 系统日期时间的获取总结大全
- JAVA日期时间用法的总结
- java8__新api时间日期
- Java 8新的日期与时间API
- paip.日期时间操作以及时间戳uapi php java python 总结