Java 基础教程

Java 面向对象

Java 高级教程

Java 笔记

Java FAQ

java获取当前日期年月日


在 Java 中获取当前日期的年、月、日有多种实现方式,以下是几种常见的方法:

方法 1:使用 java.util.Calendar

java.util.Calendar 类是 Java 提供的用于处理日期和时间的类,虽然在 Java 8 之后有了更好的替代类,但仍然可以使用它来获取当前日期的年、月、日。

步骤流程:

  1. 获取 Calendar 实例。
  2. Calendar 实例中获取年、月、日。

示例代码:

import java.util.Calendar;

public class CalendarExample {
    public static void main(String[] args) {
        Calendar calendar = Calendar.getInstance();

        int year = calendar.get(Calendar.YEAR);
        int month = calendar.get(Calendar.MONTH) + 1; // 月份从 0 开始计数,需要加 1
        int day = calendar.get(Calendar.DAY_OF_MONTH);

        System.out.println("Year: " + year);
        System.out.println("Month: " + month);
        System.out.println("Day: " + day);
    }
}

方法 2:使用 java.time.LocalDate

Java 8 引入了 java.time 包,提供了新的日期和时间 API。在这个包中,可以使用 LocalDate 类来获取当前日期的年、月、日。

步骤流程:

  1. 获取 LocalDate 实例。
  2. LocalDate 实例中获取年、月、日。

示例代码:

import java.time.LocalDate;

public class LocalDateExample {
    public static void main(String[] args) {
        LocalDate localDate = LocalDate.now();

        int year = localDate.getYear();
        int month = localDate.getMonthValue();
        int day = localDate.getDayOfMonth();

        System.out.println("Year: " + year);
        System.out.println("Month: " + month);
        System.out.println("Day: " + day);
    }
}

方法 3:使用 java.text.SimpleDateFormat

如果你只关心格式化后的日期字符串中的年、月、日部分,可以使用 SimpleDateFormat 来实现。

步骤流程:

  1. 获取当前日期的 Date 实例。
  2. 创建 SimpleDateFormat 对象并指定格式。
  3. 使用格式化对象将日期转换为字符串。

示例代码:

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

public class SimpleDateFormatExample {
    public static void main(String[] args) {
        Date date = new Date();
        SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd");

        String formattedDate = dateFormat.format(date);
        String[] parts = formattedDate.split("-");

        int year = Integer.parseInt(parts[0]);
        int month = Integer.parseInt(parts[1]);
        int day = Integer.parseInt(parts[2]);

        System.out.println("Year: " + year);
        System.out.println("Month: " + month);
        System.out.println("Day: " + day);
    }
}

请注意,这些方法在实际应用中都是可行的,选择其中一个取决于你的项目需求和代码风格。对于方法 2,即使用 java.time.LocalDate,以下是 Maven 和 Gradle 的依赖坐标:

Maven 依赖:

<dependency>
    <groupId>org.openjdk.jfxdata</groupId>
    <artifactId>javafx-data</artifactId>
    <version>18.0.0.1</version>
</dependency>

Gradle 依赖:

implementation 'org.openjdk.jfxdata:javafx-data:18.0.0.1'

请注意,上述依赖坐标可能随着时间的推移而变化,请查阅官方文档以获取最新信息。

Calendar`是Java中处理日期和时间的经典方式,虽然不够现代化,但仍然可用。time`包提供了更现代化的日期和时间处理方式,其中`L ...
currentTimeMillis()这是获取当前时间戳的一种简单方式,返回自1970年1月1日以来的毫秒数。ZonedDateTime和时 ...
在Java中,可以使用多种方式对年月日进行格式化,常用的方式包括使用Java内置的日期时间类、使用第三方库如ApacheCommonsLan ...
LocalDate)###使用第三方库-Joda-TimeJoda-Time是一个流行的第三方日期和时间处理库,但从Java8开始,官方引入 ...
我将为你列出三种常见的实现方式,包括使用Java标准库、使用第三方库Joda-Time,以及使用Java8中引入的新日期时间API。示例代码 ...