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

实用的Java日期函数与时间处理技巧

发布时间:2023-07-04 02:48:05

Java 提供了丰富的日期函数和时间处理技巧,以下是一些实用的示例:

1. 获取当前日期和时间

使用 java.util.Date 类可以获取当前的日期和时间。可以使用 new Date() 来创建一个表示当前时间的对象。

import java.util.Date;

public class Main {
    public static void main(String[] args) {
        Date currentDate = new Date();
        System.out.println(currentDate); // 输出:Mon Jun 28 10:42:29 CST 2021
    }
}

2. 格式化日期

可以使用 java.text.SimpleDateFormat 类和其提供的日期格式化模式来格式化日期。以下示例将当前日期格式化为 "yyyy-MM-dd" 格式。

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

public class Main {
    public static void main(String[] args) {
        Date currentDate = new Date();
        SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd");
        String formattedDate = dateFormat.format(currentDate);
        System.out.println(formattedDate); // 输出:2021-06-28
    }
}

3. 解析日期字符串

使用 SimpleDateFormat 类的 parse() 方法可以将日期字符串解析为 Date 对象。

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

public class Main {
    public static void main(String[] args) {
        String dateString = "2021-06-28";
        SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd");
        try {
            Date parsedDate = dateFormat.parse(dateString);
            System.out.println(parsedDate); // 输出:Mon Jun 28 00:00:00 CST 2021
        } catch (ParseException e) {
            e.printStackTrace();
        }
    }
}

4. 计算日期间隔

使用 java.util.Calendar 类可以进行日期间隔的计算。以下示例演示了如何计算两个日期之间的天数间隔。

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

public class Main {
    public static void main(String[] args) {
        SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd");
        try {
            Date startDate = dateFormat.parse("2021-06-01");
            Date endDate = dateFormat.parse("2021-06-30");
            Calendar startCalendar = Calendar.getInstance();
            startCalendar.setTime(startDate);
            Calendar endCalendar = Calendar.getInstance();
            endCalendar.setTime(endDate);
            long daysBetween = (endCalendar.getTimeInMillis() - startCalendar.getTimeInMillis()) / (1000 * 60 * 60 * 24);
            System.out.println(daysBetween); // 输出:29
        } catch (ParseException e) {
            e.printStackTrace();
        }
    }
}

5. 对日期进行加减操作

使用 java.util.Calendar 类可以对日期进行加减操作。以下示例演示了如何将一个日期加上一定的天数。

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

public class Main {
    public static void main(String[] args) {
        SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd");
        try {
            Date currentDate = dateFormat.parse("2021-06-28");
            Calendar calendar = Calendar.getInstance();
            calendar.setTime(currentDate);
            calendar.add(Calendar.DAY_OF_YEAR, 7);
            Date newDate = calendar.getTime();
            System.out.println(newDate); // 输出:Mon Jul 05 00:00:00 CST 2021
        } catch (ParseException e) {
            e.printStackTrace();
        }
    }
}

这些日期函数和时间处理技巧可以帮助您在 Java 中处理日期和时间。根据实际需求,您还可以探索更多的 Java 日期函数和时间处理技巧。