精华内容
下载资源
问答
  • 主要为大家详细介绍了java日期操作工具类,包括获取指定日期日期转换、相隔天数等操作,感兴趣的小伙伴们可以参考一下
  • //计算两日期相差天数 public int testBetweenDays(Date opDate,Date enDate) { // 获取相差的天数 Calendar calendar = Calendar.getInstance(); calendar.setTime(opDate); long timeInMi...
        //计算两日期相差天数
        public int testBetweenDays(Date opDate,Date enDate) {
            // 获取相差的天数
            Calendar calendar = Calendar.getInstance();
            calendar.setTime(opDate);
            long timeInMillis1 = calendar.getTimeInMillis();
            calendar.setTime(enDate);
            long timeInMillis2 = calendar.getTimeInMillis();
    
            int betweenDays = (int) ((timeInMillis2 - timeInMillis1) / (1000L * 3600L * 24L));
            return betweenDays;
        }
    
        public  Date addDayOfDate(Date date,int i){
            Calendar c = Calendar.getInstance();
            c.setTime(date);
            c.add(Calendar.DATE, i);
            Date newDate = c.getTime();
            return newDate;
        }
    
    展开全文
  • 两个日期之间相隔天数等工具类,供大家参考,具体内容如下import java.text.ParseException;import java.text.SimpleDateFormat;import java.util.ArrayList;import java.util.Calendar;import java.u...

    本文实例为大家分享了java日期操作工具类,获取指定日期前一天、后一天;日期转换;两个日期之间相隔天数等工具类,供大家参考,具体内容如下import java.text.ParseException;

    import java.text.SimpleDateFormat;

    import java.util.ArrayList;

    import java.util.Calendar;

    import java.util.Date;

    import java.util.List;

    public class DateUtil {

    /**

    * 获得指定日期的前一天

    *

    * @param specifiedDay

    * @param format

    * @return

    * @throws Exception

    */

    public static Date getDayBefore(Date date, String format) {

    Calendar c = Calendar.getInstance();

    c.setTime(date);

    int day = c.get(Calendar.DATE);

    c.set(Calendar.DATE, day - 1);

    String dayBeforeStr = new SimpleDateFormat(format).format(c.getTime());

    Date dayBefore = null;

    try {

    dayBefore = new SimpleDateFormat(format).parse(dayBeforeStr);

    } catch (ParseException e) {

    e.printStackTrace();

    }

    return dayBefore;

    }

    /**

    * 获得指定日期的后一天

    *

    * @param specifiedDay

    * @return

    */

    public static Date getDayAfter(Date date, String format) {

    Calendar c = Calendar.getInstance();

    c.setTime(date);

    int day = c.get(Calendar.DATE);

    c.set(Calendar.DATE, day + 1);

    String dayAfterStr = new SimpleDateFormat(format).format(c.getTime());

    Date dayAfter = null;

    try {

    dayAfter = new SimpleDateFormat(format).parse(dayAfterStr);

    } catch (ParseException e) {

    e.printStackTrace();

    }

    return dayAfter;

    }

    /**

    * 获得指定日期的前一天

    *

    * @param specifiedDay

    * @param format

    * @return

    * @throws Exception

    */

    public static String getSpecifiedDayBefore(String specifiedDay, String format) {

    // SimpleDateFormat simpleDateFormat = new

    // SimpleDateFormat("yyyy-MM-dd");

    Calendar c = Calendar.getInstance();

    Date date = null;

    try {

    date = new SimpleDateFormat("yy-MM-dd").parse(specifiedDay);

    } catch (ParseException e) {

    e.printStackTrace();

    }

    c.setTime(date);

    int day = c.get(Calendar.DATE);

    c.set(Calendar.DATE, day - 1);

    String dayBefore = new SimpleDateFormat("yyyy-MM-dd").format(c.getTime());

    return dayBefore;

    }

    /**

    * 获得指定日期的后一天

    *

    * @param specifiedDay

    * @return

    */

    public static String getSpecifiedDayAfter(String specifiedDay, String format) {

    Calendar c = Calendar.getInstance();

    Date date = null;

    try {

    // date = new SimpleDateFormat("yy-MM-dd").parse(specifiedDay);

    date = new SimpleDateFormat(format).parse(specifiedDay);

    } catch (ParseException e) {

    e.printStackTrace();

    }

    c.setTime(date);

    int day = c.get(Calendar.DATE);

    c.set(Calendar.DATE, day + 1);

    // String dayAfter=new

    // SimpleDateFormat("yyyy-MM-dd").format(c.getTime());

    String dayAfter = new SimpleDateFormat(format).format(c.getTime());

    return dayAfter;

    }

    /**

    * 将date类型准成指定format格式的字符串

    *

    * @param day 日期

    * @param format 指定格式

    * @return

    */

    public static String date2String(Date day, String format) {

    String dateStr = new SimpleDateFormat(format).format(day.getTime());

    return dateStr;

    }

    /**

    * 将字符串转成指定格式的date类型

    *

    * @param day 日期

    * @param format 指定格式

    * @return

    */

    public static Date string2Date(String dateStr,String format) {

    Date strDate = null;

    try {

    strDate = new SimpleDateFormat(format).parse(dateStr);

    } catch (ParseException e) {

    e.printStackTrace();

    }

    return strDate;

    }

    /**

    *

    * @Title: DateDate2CompareValue

    * @Description: 两个date类型比较大小

    * @param dayAfter date类型

    * @param date date类型

    * @param 格式化

    * @return boolean

    * @throws

    */

    public static boolean DateDate2CompareValue(Date dayAfter, Date date, String pattern) {

    SimpleDateFormat sdf = new SimpleDateFormat(pattern);

    try {

    Date d1 = sdf.parse(sdf.format(dayAfter));

    Date d2 = sdf.parse(sdf.format(date));

    if(d1.getTime()>=d2.getTime()){

    return true;

    }

    } catch (ParseException e) {

    e.printStackTrace();

    }

    return false;

    }

    /**

    * 比较两个日期年月日的大小

    * @Title: DateCompareValue

    * @Description: 一个stirng一个date类型比较大小

    * @param date1 String类型

    * @param date2 date类型

    * @param @return

    * @return boolean

    * @throws

    */

    public static boolean DateStrDateCompareValue(String date1, Date date, String pattern) {

    SimpleDateFormat sdf = new SimpleDateFormat(pattern);

    try {

    Date d1 = sdf.parse(date1);

    Date d2 = sdf.parse(sdf.format(date));

    if(d1.getTime()>=d2.getTime()){

    return true;

    }

    } catch (ParseException e) {

    // TODO Auto-generated catch block

    e.printStackTrace();

    }

    return false;

    }

    /**

    * 比较两个日期年月日的大小

    * @Title: DateStr2CompareValue

    * @Description: 两个string类型比较时间大小

    * @param date1

    * @param date2

    * @return boolean

    * @throws

    */

    @SuppressWarnings("unused")

    public static boolean DateStr2CompareValue(String date1, String date2,String pattern) {

    SimpleDateFormat sdf = new SimpleDateFormat(pattern);

    try {

    Date d1 = sdf.parse(date1);

    Date d2 = sdf.parse(date2);

    if(d1.getTime()>=d2.getTime()){

    return true;

    }

    } catch (ParseException e) {

    e.printStackTrace();

    }

    return false;

    }

    /**

    *

    * @Title: get2DateListDate

    * @date 2016年5月17日 下午2:11:48

    * @Description: 获取时间之内的 相隔天数的date集合

    * @param @param preDate 开始时间

    * @param @param nextDate 结束时间

    * @param @param format fomat格式

    * @param @return

    * @return List 相隔天数集合

    * @throws

    */

    public static List get2DateListDate(String preDate, String nextDate, String format) {

    List list = new ArrayList<>();

    if(nextDate.equals(preDate)){//开始时间 结束时间相等就直接返回

    list.add(DateUtil.string2Date(preDate, format));

    return list;

    }

    String nexDate = DateUtil.getSpecifiedDayAfter(preDate, format);

    list.add(DateUtil.string2Date(preDate, format));

    list.add(DateUtil.string2Date(nexDate, format));

    while (!nexDate.equals(nextDate)) {

    String nextnextDate = DateUtil.getSpecifiedDayAfter(nexDate, format);

    list.add(DateUtil.string2Date(nextnextDate, format));

    nexDate = nextnextDate;

    }

    return list;

    }

    /**

    *

    * @Title: get2DateListDate

    * @date 2016年5月17日 下午2:11:48

    * @Description: 获取时间之内的 相隔天数的string集合

    * @param @param preDate 开始时间

    * @param @param nextDate 结束时间

    * @param @param format fomat格式

    * @param @return

    * @return List 相隔天数集合

    * @throws

    */

    public static List get2DateListDateStr(String preDate, String nextDate, String format) {

    List list = new ArrayList<>();

    if(nextDate.equals(preDate)){//如果开始时间等于结束时间那么就是同一天

    list.add(preDate);

    return list;

    }

    String nexDate = DateUtil.getSpecifiedDayAfter(preDate, format);

    list.add(preDate);

    list.add(nexDate);

    while (!nexDate.equals(nextDate)) {

    String nextnextDate = DateUtil.getSpecifiedDayAfter(nexDate, format);

    list.add(nextnextDate);

    nexDate = nextnextDate;

    }

    return list;

    }

    /**

    *

    * @Title: get2DateListWithDate

    * @date 2016年5月26日 上午9:20:29

    * @Description: 获取两个日期之间日期的

    * @param @param startDate 开始日期 date类型

    * @param @param endDate 结束日期 date类型

    * @param @return

    * @return List datelist

    * @throws

    */

    public static List get2DateListWithDate(Date startDate, Date endDate,String format) {

    List list = new ArrayList<>();

    if(startDate.getTime() >endDate.getTime()){

    return list;

    }

    String startDateStr = DateUtil.date2String(startDate, format);

    String endDateStr = DateUtil.date2String(endDate, format);

    if(startDateStr.equals(endDateStr)){//如果开始时间等于结束时间那么就是同一天

    list.add(startDate);

    return list;

    }

    Date nextDate = DateUtil.getDayAfter(startDate, format);

    String nextDateStr = DateUtil.date2String(nextDate, format);

    //String endDateStr = DateUtil.date2String(endDate, format);

    list.add(startDate);

    list.add(nextDate);

    while (!nextDateStr.equals(endDateStr)) {

    String nextnextDate = DateUtil.getSpecifiedDayAfter(nextDateStr, format);

    list.add(DateUtil.string2Date(nextnextDate, format));

    nextDateStr = nextnextDate;

    }

    return list;

    }

    public static void main(String[] args) throws Exception {

    /**/ String preDate = getSpecifiedDayBefore("2016-05-01", "yyyy-MM-dd");

    String nextDate = getSpecifiedDayAfter("2016-05-03", "yyyy-MM-dd");

    Date befroDay = getDayBefore(new Date(), "yyyy-MM-dd");

    Date dateAfter = getDayAfter(new Date(), "yyyy-MM-dd");

    // System.out.println("前一天:" + preDate + " 后一天:" + nextDate);

    // System.err.println("前一天:" +date2String( befroDay ,"yyyy-MM-dd")+ "

    // 后一天:" + dateAfter);

    String mat = "yyyy-MM-dd";// 这里最好从数据库中读取

    SimpleDateFormat dateTimeFormat = new SimpleDateFormat(mat);

    Date dd = DateUtil.getDayBefore(new Date(), mat);

    // Date befroDay = getDayBefore(new Date(), "yyyy-MM-dd");

    String sd = date2String(befroDay, "yyyy-MM-dd");

    String dateStr = dateTimeFormat.format(befroDay);

    // System.out.println("dateStr="+dateStr+" sd "+sd);

    //List listDate = get2DateListDate("2016-05-01", "2016-05-03", "yyyy-MM-dd");

    //List listDateStr = get2DateListDateStr("2016-05-01", "2016-05-03", "yyyy-MM-dd");

    Date startDate = new Date();

    Date endDate = dateTimeFormat.parse("2016-05-31");

    List listDate = get2DateListWithDate(startDate,endDate,"yyyy-MM-dd");

    for (int i = 0; i < listDate.size(); i++) {

    System.err.println(listDate.get(i));

    }

    /*for (int i = 0; i < listDateStr.size(); i++) {

    //System.out.println(listDateStr.get(i));

    }*/

    }

    以上就是本文的全部内容,希望对大家的学习java程序设计有所帮助。

    更多java日期操作工具类(获取指定日期、日期转换、相隔天数)相关文章请关注PHP中文网!

    本文原创发布php中文网,转载请注明出处,感谢您的尊重!

    展开全文
  • java8的日期工具类(获取当前时间 相隔天数 小时 分钟 秒等处理java8的日期工具类(获取当前时间 相隔天数 小时 分钟 秒等处理)package com.example.list_test;import java.text.ParseException;import java.text....

    java8的日期工具类(获取当前时间 相隔天数 小时 分钟 秒等处理

    java8的日期工具类(获取当前时间 相隔天数 小时 分钟 秒等处理)

    package com.example.list_test;

    import java.text.ParseException;

    import java.text.SimpleDateFormat;

    import java.time.*;

    import java.time.format.DateTimeFormatter;

    import java.time.temporal.ChronoUnit;

    import java.time.temporal.Temporal;

    import java.time.temporal.TemporalAdjusters;

    import java.util.Date;

    /**

    * 描述:DateTimeUtils

    *

    * @author 何志鹏

    * @ClassName:DateTimeUtils

    * @create 2019-06-05 10:08

    * Version 1.0

    */

    public class DateTimeUtils {

    public static final DateTimeFormatter DATETIME_FORMATTER = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");

    public static final DateTimeFormatter DATE_FORMATTER = DateTimeFormatter.ofPattern("yyyy-MM-dd");

    public static void main(String[] args) {

    System.out.println("============返回当前的日期=============");

    System.out.println(getCurrentLocalDate());

    System.out.println("============返回当前日期时间=============");

    System.out.println(getCurrentLocalDateTime());

    System.out.println("============返回当前日期字符串 yyyyMMdd=============");

    System.out.println(getCurrentDateStr());

    System.out.println("============返回当前日期时间字符串 yyyyMMddHHmmss=============");

    System.out.println(getCurrentDateTimeStr());

    System.out.println("============日期相隔天数=============");

    LocalDate startDateInclusive = LocalDate.of(2019, 06, 04);

    LocalDate endDateExclusive = LocalDate.of(2019, 06, 05);

    System.out.println(periodDays(startDateInclusive, endDateExclusive));

    System.out.println("============日期相隔小时=============");

    String dt = "2019年06月04日";

    String dt2 = "2019年06月05日";

    SimpleDateFormat sd = new SimpleDateFormat("yyyy年MM月dd日");

    try {

    Instant start = sd.parse(dt).toInstant();

    Instant end = sd.parse(dt2).toInstant();

    System.out.println(durationHours(start, end));

    System.out.println("============日期相隔分钟=============");

    System.out.println(durationMinutes(start, end));

    System.out.println("============日期相隔毫秒数=============");

    System.out.println(durationMillis(start, end));

    } catch (ParseException e) {

    e.printStackTrace();

    }

    System.out.println("============是否当天=============");

    LocalDate today = LocalDate.of(2019, 06, 05);

    System.out.println(isToday(today));

    System.out.println("============获取本月的第一天=============");

    System.out.println(getFirstDayOfThisMonth());

    System.out.println("============获取本月的最后一天=============");

    System.out.println(getLastDayOfThisMonth());

    System.out.println("============获取2017-01的第一个周一=============");

    System.out.println(getFirstMonday());

    System.out.println("============获取当前日期的后两周=============");

    System.out.println(getCurDateAfterTwoWeek());

    System.out.println("============获取当前日期的6个月后的日期=============");

    System.out.println(getCurDateAfterSixMonth());

    System.out.println("============获取当前日期的5年后的日期=============");

    System.out.println(getCurDateAfterFiveYear());

    System.out.println("============获取当前日期的20年后的日期=============");

    System.out.println(getCurDateAfterTwentyYear());

    }

    /**

    * 返回当前的日期

    *

    * @return

    */

    public static LocalDate getCurrentLocalDate() {

    return LocalDate.now();

    }

    /**

    * 返回当前日期时间

    *

    * @return

    */

    public static LocalDateTime getCurrentLocalDateTime() {

    return LocalDateTime.now();

    }

    /**

    * 返回当前日期字符串 yyyyMMdd

    *

    * @return

    */

    public static String getCurrentDateStr() {

    return LocalDate.now().format(DATE_FORMATTER);

    }

    /**

    * 返回当前日期时间字符串 yyyyMMddHHmmss

    *

    * @return

    */

    public static String getCurrentDateTimeStr() {

    return LocalDateTime.now().format(DATETIME_FORMATTER);

    }

    public static LocalDate parseLocalDate(String dateStr, String pattern) {

    return LocalDate.parse(dateStr, DateTimeFormatter.ofPattern(pattern));

    }

    public static LocalDateTime parseLocalDateTime(String dateTimeStr, String pattern) {

    return LocalDateTime.parse(dateTimeStr, DateTimeFormatter.ofPattern(pattern));

    }

    /**

    * 日期相隔天数

    *

    * @param startDateInclusive

    * @param endDateExclusive

    * @return

    */

    public static int periodDays(LocalDate startDateInclusive, LocalDate endDateExclusive) {

    return Period.between(startDateInclusive, endDateExclusive).getDays();

    }

    /**

    * 日期相隔小时

    *

    * @param startInclusive

    * @param endExclusive

    * @return

    */

    public static long durationHours(Temporal startInclusive, Temporal endExclusive) {

    return Duration.between(startInclusive, endExclusive).toHours();

    }

    /**

    * 日期相隔分钟

    *

    * @param startInclusive

    * @param endExclusive

    * @return

    */

    public static long durationMinutes(Temporal startInclusive, Temporal endExclusive) {

    return Duration.between(startInclusive, endExclusive).toMinutes();

    }

    /**

    * 日期相隔毫秒数

    *

    * @param startInclusive

    * @param endExclusive

    * @return

    */

    public static long durationMillis(Temporal startInclusive, Temporal endExclusive) {

    return Duration.between(startInclusive, endExclusive).toMillis();

    }

    /**

    * 是否当天

    *

    * @param date

    * @return

    */

    public static boolean isToday(LocalDate date) {

    return getCurrentLocalDate().equals(date);

    }

    /**

    * 获取本月的第一天

    *

    * @return

    */

    public static String getFirstDayOfThisMonth() {

    return getCurrentLocalDate().with(TemporalAdjusters.firstDayOfMonth()).format(DATE_FORMATTER);

    }

    /**

    * 获取本月的最后一天

    *

    * @return

    */

    public static String getLastDayOfThisMonth() {

    return getCurrentLocalDate().with(TemporalAdjusters.lastDayOfMonth()).format(DATE_FORMATTER);

    }

    /**

    * 获取2017-01的第一个周一

    *

    * @return

    */

    public static String getFirstMonday() {

    return LocalDate.parse("2017-01-01").with(TemporalAdjusters.firstInMonth(DayOfWeek.MONDAY))

    .format(DATE_FORMATTER);

    }

    /**

    * 获取当前日期的后两周

    *

    * @return

    */

    public static String getCurDateAfterTwoWeek() {

    return getCurrentLocalDate().plus(2, ChronoUnit.WEEKS).format(DATE_FORMATTER);

    }

    /**

    * 获取当前日期的6个月后的日期

    *

    * @return

    */

    public static String getCurDateAfterSixMonth() {

    return getCurrentLocalDate().plus(6, ChronoUnit.MONTHS).format(DATE_FORMATTER);

    }

    /**

    * 获取当前日期的5年后的日期

    *

    * @return

    */

    public static String getCurDateAfterFiveYear() {

    return getCurrentLocalDate().plus(5, ChronoUnit.YEARS).format(DATE_FORMATTER);

    }

    /**

    * 获取当前日期的20年后的日期

    *

    * @return

    */

    public static String getCurDateAfterTwentyYear() {

    return getCurrentLocalDate().plus(2, ChronoUnit.DECADES).format(DATE_FORMATTER);

    }

    /**

    * 字符串转时间

    *

    * @return

    */

    public static LocalDate stringToDate(String time) {

    DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd");

    return LocalDate.parse(time, formatter);

    }

    }

    a4ebe0deee698129bc44bd2ac4dbc51b.png

    java8的日期工具类(获取当前时间 相隔天数 小时 分钟 秒等处理相关教程

    展开全文
  • package ...import java.text.ParseException;import java.text.SimpleDateFormat;import java.time.*;import java.time.format.DateTimeFormatter;import java.time.temporal.ChronoUnit;import...

    package com.example.list_test;

    import java.text.ParseException;

    import java.text.SimpleDateFormat;

    import java.time.*;

    import java.time.format.DateTimeFormatter;

    import java.time.temporal.ChronoUnit;

    import java.time.temporal.Temporal;

    import java.time.temporal.TemporalAdjusters;

    import java.util.Date;

    /**

    * 描述:DateTimeUtils

    *

    * @author 何志鹏

    * @ClassName:DateTimeUtils

    * @create 2019-06-05 10:08

    * Version 1.0

    */

    public class DateTimeUtils {

    public static final DateTimeFormatter DATETIME_FORMATTER = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");

    public static final DateTimeFormatter DATE_FORMATTER = DateTimeFormatter.ofPattern("yyyy-MM-dd");

    public static void main(String[] args) {

    System.out.println("============返回当前的日期=============");

    System.out.println(getCurrentLocalDate());

    System.out.println("============返回当前日期时间=============");

    System.out.println(getCurrentLocalDateTime());

    System.out.println("============返回当前日期字符串 yyyyMMdd=============");

    System.out.println(getCurrentDateStr());

    System.out.println("============返回当前日期时间字符串 yyyyMMddHHmmss=============");

    System.out.println(getCurrentDateTimeStr());

    System.out.println("============日期相隔天数=============");

    LocalDate startDateInclusive = LocalDate.of(2019, 06, 04);

    LocalDate endDateExclusive = LocalDate.of(2019, 06, 05);

    System.out.println(periodDays(startDateInclusive, endDateExclusive));

    System.out.println("============日期相隔小时=============");

    String dt = "2019年06月04日";

    String dt2 = "2019年06月05日";

    SimpleDateFormat sd = new SimpleDateFormat("yyyy年MM月dd日");

    try {

    Instant start = sd.parse(dt).toInstant();

    Instant end = sd.parse(dt2).toInstant();

    System.out.println(durationHours(start, end));

    System.out.println("============日期相隔分钟=============");

    System.out.println(durationMinutes(start, end));

    System.out.println("============日期相隔毫秒数=============");

    System.out.println(durationMillis(start, end));

    } catch (ParseException e) {

    e.printStackTrace();

    }

    System.out.println("============是否当天=============");

    LocalDate today = LocalDate.of(2019, 06, 05);

    System.out.println(isToday(today));

    System.out.println("============获取本月的第一天=============");

    System.out.println(getFirstDayOfThisMonth());

    System.out.println("============获取本月的最后一天=============");

    System.out.println(getLastDayOfThisMonth());

    System.out.println("============获取2017-01的第一个周一=============");

    System.out.println(getFirstMonday());

    System.out.println("============获取当前日期的后两周=============");

    System.out.println(getCurDateAfterTwoWeek());

    System.out.println("============获取当前日期的6个月后的日期=============");

    System.out.println(getCurDateAfterSixMonth());

    System.out.println("============获取当前日期的5年后的日期=============");

    System.out.println(getCurDateAfterFiveYear());

    System.out.println("============获取当前日期的20年后的日期=============");

    System.out.println(getCurDateAfterTwentyYear());

    }

    /**

    * 返回当前的日期

    *

    * @return

    */

    public static LocalDate getCurrentLocalDate() {

    return LocalDate.now();

    }

    /**

    * 返回当前日期时间

    *

    * @return

    */

    public static LocalDateTime getCurrentLocalDateTime() {

    return LocalDateTime.now();

    }

    /**

    * 返回当前日期字符串 yyyyMMdd

    *

    * @return

    */

    public static String getCurrentDateStr() {

    return LocalDate.now().format(DATE_FORMATTER);

    }

    /**

    * 返回当前日期时间字符串 yyyyMMddHHmmss

    *

    * @return

    */

    public static String getCurrentDateTimeStr() {

    return LocalDateTime.now().format(DATETIME_FORMATTER);

    }

    public static LocalDate parseLocalDate(String dateStr, String pattern) {

    return LocalDate.parse(dateStr, DateTimeFormatter.ofPattern(pattern));

    }

    public static LocalDateTime parseLocalDateTime(String dateTimeStr, String pattern) {

    return LocalDateTime.parse(dateTimeStr, DateTimeFormatter.ofPattern(pattern));

    }

    /**

    * 日期相隔天数

    *

    * @param startDateInclusive

    * @param endDateExclusive

    * @return

    */

    public static int periodDays(LocalDate startDateInclusive, LocalDate endDateExclusive) {

    return Period.between(startDateInclusive, endDateExclusive).getDays();

    }

    /**

    * 日期相隔小时

    *

    * @param startInclusive

    * @param endExclusive

    * @return

    */

    public static long durationHours(Temporal startInclusive, Temporal endExclusive) {

    return Duration.between(startInclusive, endExclusive).toHours();

    }

    /**

    * 日期相隔分钟

    *

    * @param startInclusive

    * @param endExclusive

    * @return

    */

    public static long durationMinutes(Temporal startInclusive, Temporal endExclusive) {

    return Duration.between(startInclusive, endExclusive).toMinutes();

    }

    /**

    * 日期相隔毫秒数

    *

    * @param startInclusive

    * @param endExclusive

    * @return

    */

    public static long durationMillis(Temporal startInclusive, Temporal endExclusive) {

    return Duration.between(startInclusive, endExclusive).toMillis();

    }

    /**

    * 是否当天

    *

    * @param date

    * @return

    */

    public static boolean isToday(LocalDate date) {

    return getCurrentLocalDate().equals(date);

    }

    /**

    * 获取本月的第一天

    *

    * @return

    */

    public static String getFirstDayOfThisMonth() {

    return getCurrentLocalDate().with(TemporalAdjusters.firstDayOfMonth()).format(DATE_FORMATTER);

    }

    /**

    * 获取本月的最后一天

    *

    * @return

    */

    public static String getLastDayOfThisMonth() {

    return getCurrentLocalDate().with(TemporalAdjusters.lastDayOfMonth()).format(DATE_FORMATTER);

    }

    /**

    * 获取2017-01的第一个周一

    *

    * @return

    */

    public static String getFirstMonday() {

    return LocalDate.parse("2017-01-01").with(TemporalAdjusters.firstInMonth(DayOfWeek.MONDAY))

    .format(DATE_FORMATTER);

    }

    /**

    * 获取当前日期的后两周

    *

    * @return

    */

    public static String getCurDateAfterTwoWeek() {

    return getCurrentLocalDate().plus(2, ChronoUnit.WEEKS).format(DATE_FORMATTER);

    }

    /**

    * 获取当前日期的6个月后的日期

    *

    * @return

    */

    public static String getCurDateAfterSixMonth() {

    return getCurrentLocalDate().plus(6, ChronoUnit.MONTHS).format(DATE_FORMATTER);

    }

    /**

    * 获取当前日期的5年后的日期

    *

    * @return

    */

    public static String getCurDateAfterFiveYear() {

    return getCurrentLocalDate().plus(5, ChronoUnit.YEARS).format(DATE_FORMATTER);

    }

    /**

    * 获取当前日期的20年后的日期

    *

    * @return

    */

    public static String getCurDateAfterTwentyYear() {

    return getCurrentLocalDate().plus(2, ChronoUnit.DECADES).format(DATE_FORMATTER);

    }

    /**

    * 字符串转时间

    *

    * @return

    */

    public static LocalDate stringToDate(String time) {

    DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd");

    return LocalDate.parse(time, formatter);

    }

    }

    52893ee42307a6e6ce17568ca9cc7bf3.png

    展开全文
  • 列:2017-08-11 与 2017-08-15 返回 3 列:2017-08-10 与 2017-08-11 返回 0
  • package ... import java.text.ParseException; import java.text.SimpleDateFormat; import java.time.*; import java.time.format.DateTimeFormatter; import java.time.temporal.ChronoUnit...
  • public static void main(String[] args) { String start = "2021-01-20"; String end = "2021-02-01"; LocalDate parseStart = LocalDate.parse(start); LocalDate parseEnd = ... //相隔天数 long days = p
  • import java.text.ParseException;import java.text.SimpleDateFormat;import java.util.ArrayList;import java.util.Calendar;import java.util.Date;...public class DateUtil {/*** 获得指定日期的前一...
  • 1.Calendar类是java里的日历对象,我们可以通过其实例设置任意日期,以及获取任意日期的年份、月份和天数等等,Calendar里的月份是从0开始的,0代表1月份,如下为两个日期相差多少个月。 2.结果。 ...
  • "日期格式非法" ); e.printStackTrace(); } int count = 0 ; while (cl1.compareTo(cl2) 0 ) { if (cl1.get(Calendar.DAY_OF_WEEK) != 7 && cl1.get(Calendar.DAY_OF_WEEK) != 1 ) count++; cl1....
  • 关于日期 Date 类与 Calendar类 -__ 均属于java.util类__ Date类:创造Date类并输出当前时间Date nowTime = new Date(); System.out.print(nowTime); 或者 Calendar类 通过特定方法初始化对象Calendar calendar = ...
  • 在学习了Java中的Date类相关的方法之后,我试着自己写了小程序可以计算任意两天之间相隔天数,挺好用的。 设计思路: 运用Date类中提供的getTime()方法,获取输入的日期与1990-01-01 之间的毫秒差 将获取到的两个...
  • 工作或者使用中java处理日期是经常遇到的问题,所以我们要对Date类型的处理进行架构,能够使之复用。比如说实现下面的工具类; 又比如说使用功能jdk8版本的获取俩个日期的时间;YYYY-MM-DD这种格式日期相隔时间;...
  • 迂回战术:获取两个日期之间的天数。除以7等于相隔多少周。 参考链接:https://blog.csdn.net/kevin_mails/article/details/78440696 package com.test; import java.time.LocalDate; import java.time.Month; ...
  • 与现在-N天的日期对比 -1 0 1,比较日期,与现在的日期对比,比较日期,与现在的日期对比 得到天数,计算两个日期间相隔的日子、计算员工的工作天数获取昨天的日期的字符串等。 运行环境:Java/Eclipse
  • 与现在的日期对比 得到天数、计算两个日期间相隔的日子、获取今天的日期的字符串、获取当前月份,* @return 返回字符串 格式:两位数、获取昨天的日期的字符串等,还可以计算员工的工作天数,如在使用期和离职期该...
  • Java日期相关类

    2019-04-20 02:08:51
    这里只是简单记录一下个人认为比较常用的一些方法:1.获取本地时间。2.格式化时间。3.日期转字符串。4.字符串转日期。5.求两个日期之间相隔天数
  • package com.gary.util; import java.util.Calendar; /** * 日期工具 * @author gary * ... * 计算两个日期相隔天数 * @param d1 * @param d2 * @return */ public s...
  • 当然类似于前一篇博客的内容就不多写了,写一些不一样的,如一个月的总天数,两个日期之间相隔天数,字符串类型日期的格式化等。 废话不多说,上代码: public class TimeTest { /** * 获取指定日期的...
  • java常用实用类

    2020-08-30 19:20:55
    Date类与Calendar类Data类格式化时间输出指定格式的时间日期Calendar类计算日期之间相隔天数(常用) Data类 Data类在java.util包中,它的无参构造方法创建的对象可以获取本地当前时间。用Data的构造方法Data(long ...
  • java工具类——calendar

    2015-05-31 22:37:03
    最近代码中需要做很多和时间相关的处理,以时间为条件查询、string——Date转换、分秒的加减、日期的加减、日期的前后比较、相隔天数(小时、分钟、秒)、获取年月日、获取星期、获取某月第一天、设置某个时间为...
  • 题目要求:Date类要求可设定年月日可转换为字符串,并可指定分隔符,默认为’-’可获取若干天以前/后的日期可计算与某个日期相隔天数,日期的形式可能是日期对象,也可能是代表年月日的三个整数可与某个日期比较...
  • 在程序中我们经常会将某一个时间戳存储到数据库,或者将数据库中的时间戳取出格式化成某种显示格式,或者是计算两个日期之间的相隔天数……下面小编就将最近整理的关于日期格式化小插曲分享给大家;  小编经常用到...
  • JAVA时间处理类

    2013-08-01 22:37:14
    * 获得与某日期相隔几天的日期 * * @param date * 指定する日付 * @param addCount * 離れた日数 * @return 処理後の日付 */ public static Date addDay(Date date, int addCount) { if (date == ...
  • 实验2 比较日期的大小 21 实验3 处理大整数 22 上机实践6 组件及事件处理 23 实验1 算术测试 23 实验2 信号灯 25 实验3 布局与日历 28 上机实践7 组件及事件处理2 31 实验1 方程求根 31 实验2 字体对话框 34 实验3 ...

空空如也

空空如也

1 2
收藏数 27
精华内容 10
关键字:

java获取日期相隔天数

java 订阅