欢迎访问宙启技术站
智能推送

Java函数库:日期和时间函数示例

发布时间:2023-06-20 12:01:20

在Java编程中,日期和时间函数是非常重要的一类函数,它们可以用来处理日期和时间相关的任务,如日期格式化、日期计算、日期比较等等。下面我将介绍一些Java日期和时间函数库的示例。

1. SimpleDateFormat

SimpleDateFormat是Java日期格式化的一个核心类,可以用来将日期格式化为指定的格式字符串。

import java.text.SimpleDateFormat;
import java.util.Date;

public class SimpleDateFormatExample {
    public static void main(String[] args) {
        Date date = new Date();
        SimpleDateFormat formatter = new SimpleDateFormat("yyyy/MM/dd HH:mm:ss");
        String formattedDate = formatter.format(date);
        System.out.println(formattedDate);     
    }
}

上面的代码中,我们通过SimpleDateFormat将当前时间格式化为"yyyy/MM/dd HH:mm:ss"的字符串。

2. Calendar

Calendar是Java日期计算的一个核心类,可以使用Calendar进行日期加减、获取日期中的年、月、日等信息。

import java.util.Calendar;

public class CalendarExample {
    public static void main(String[] args) {
        Calendar calendar = Calendar.getInstance();
        calendar.add(Calendar.DAY_OF_YEAR, 2);
        int year = calendar.get(Calendar.YEAR);
        int month = calendar.get(Calendar.MONTH) + 1;
        int day = calendar.get(Calendar.DAY_OF_MONTH);
        System.out.printf("%d-%d-%d", year, month, day);
    }
}

上面的代码中,我们通过Calendar将当前日期加上2天,并获取加完后的年、月、日。

3. DateUtils

DateUtils是Apache Common Lang库中提供的日期处理工具类,可以用来对日期进行各种操作,如格式化、计算、转换等等。

import org.apache.commons.lang3.time.DateUtils;
import java.text.ParseException;
import java.util.Calendar;
import java.util.Date;

public class DateUtilsExample {
    public static void main(String[] args) throws ParseException {
        Date date = DateUtils.parseDate("2022-12-01 12:30:00", "yyyy-MM-dd HH:mm:ss");
        Calendar calendar = DateUtils.toCalendar(date);
        calendar.add(Calendar.MONTH, 6);
        Date newDate = calendar.getTime();
        String formattedDate = DateUtils.formatDate(newDate, "dd-MMM-yyyy");
        System.out.println(formattedDate);
    }
}

上面的代码中,我们使用DateUtils将"2022-12-01 12:30:00"字符串转换为日期,并使用Calendar对日期加上6个月,最后将新日期格式化为"dd-MMM-yyyy"的字符串。

4. Duration和Instant

Duration和Instant是Java 8中提供的日期和时间处理API,可以用来计算两个时间点之间的时间差。

import java.time.Duration;
import java.time.Instant;

public class DurationAndInstantExample {
    public static void main(String[] args) throws InterruptedException {
        Instant start = Instant.now();
        Thread.sleep(1000);
        Instant end = Instant.now();
        Duration duration = Duration.between(start, end);
        System.out.printf("Elapsed time: %d seconds, %d nanoseconds", duration.getSeconds(), duration.getNano());
    }
}

上面的代码中,我们使用Duration和Instant计算程序运行时间,并将结果输出。

这些是Java日期和时间函数库的一些示例,通过这些函数库,我们可以轻松地进行日期和时间相关的任务。