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

Java中如何使用函数实现日期时间的加减和格式化操作

发布时间:2023-07-06 05:31:03

一、日期时间的加减操作

在Java中,可以使用Java标准库提供的java.util.Calendar类或者第三方库java.time来进行日期时间的加减操作。

1. 使用java.util.Calendar

import java.util.Calendar;

public class DateUtils {

    public static void main(String[] args) {
        // 获取当前日期时间
        Calendar calendar = Calendar.getInstance();
        
        // 日期时间加一天
        calendar.add(Calendar.DAY_OF_YEAR, 1);
        System.out.println(calendar.getTime());
        
        // 日期时间减一天
        calendar.add(Calendar.DAY_OF_YEAR, -1);
        System.out.println(calendar.getTime());
        
        // 日期时间加一小时
        calendar.add(Calendar.HOUR_OF_DAY, 1);
        System.out.println(calendar.getTime());
        
        // 日期时间减一小时
        calendar.add(Calendar.HOUR_OF_DAY, -1);
        System.out.println(calendar.getTime());
    }
}

2. 使用java.time

import java.time.LocalDateTime;
import java.time.format.DateTimeFormatter;

public class DateUtils {

    public static void main(String[] args) {
        // 获取当前日期时间
        LocalDateTime now = LocalDateTime.now();
        
        // 日期时间加一天
        LocalDateTime afterOneDay = now.plusDays(1);
        System.out.println(format(afterOneDay));
        
        // 日期时间减一天
        LocalDateTime beforeOneDay = now.minusDays(1);
        System.out.println(format(beforeOneDay));
        
        // 日期时间加一小时
        LocalDateTime afterOneHour = now.plusHours(1);
        System.out.println(format(afterOneHour));
        
        // 日期时间减一小时
        LocalDateTime beforeOneHour = now.minusHours(1);
        System.out.println(format(beforeOneHour));
    }
    
    private static String format(LocalDateTime dateTime) {
        DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
        return formatter.format(dateTime);
    }
}

二、日期时间的格式化操作

在Java中,可以使用java.text.DateFormat类或者第三方库java.time.format.DateTimeFormatter来进行日期时间的格式化操作。

1. 使用java.text.DateFormat

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

public class DateUtils {

    public static void main(String[] args) {
        // 获取当前日期时间
        Date now = new Date();
        
        // 日期时间格式化为字符串
        DateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
        String formattedDateTime = dateFormat.format(now);
        System.out.println(formattedDateTime);
        
        // 字符串解析为日期时间
        try {
            Date parsedDateTime = dateFormat.parse(formattedDateTime);
            System.out.println(parsedDateTime);
        } catch (ParseException e) {
            e.printStackTrace();
        }
    }
}

2. 使用java.time.format.DateTimeFormatter

import java.time.LocalDateTime;
import java.time.format.DateTimeFormatter;

public class DateUtils {

    public static void main(String[] args) {
        // 获取当前日期时间
        LocalDateTime now = LocalDateTime.now();
        
        // 日期时间格式化为字符串
        DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
        String formattedDateTime = formatter.format(now);
        System.out.println(formattedDateTime);
        
        // 字符串解析为日期时间
        LocalDateTime parsedDateTime = LocalDateTime.parse(formattedDateTime, formatter);
        System.out.println(parsedDateTime);
    }
}

以上是Java中如何使用函数实现日期时间的加减和格式化操作的示例代码,供参考。在实际应用中,可以根据具体需求进行适当调整和扩展。