Java實(shí)現(xiàn)輕松處理日期和時(shí)間的API小結(jié)
Java 用戶輸入(Scanner)
簡(jiǎn)介
Scanner 類用于獲取用戶輸入,它位于 java.util 包中。
使用 Scanner 類
要使用 Scanner 類,請(qǐng)執(zhí)行以下步驟:
- 導(dǎo)入
java.util.Scanner包。 - 創(chuàng)建一個(gè)
Scanner對(duì)象,并將其初始化為System.in。 - 使用
Scanner對(duì)象的方法讀取用戶輸入。
示例
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.println("請(qǐng)輸入您的姓名:");
String name = scanner.nextLine();
System.out.println("請(qǐng)輸入您的年齡:");
int age = scanner.nextInt();
System.out.println("您的姓名是:" + name);
System.out.println("您的年齡是:" + age);
}
}
讀取不同類型的數(shù)據(jù)
Scanner 類提供了各種方法來讀取不同類型的數(shù)據(jù):
| 方法 | 描述 |
|---|---|
| nextBoolean() | 讀取布爾值 |
| nextByte() | 讀取字節(jié)值 |
| nextDouble() | 讀取雙精度浮點(diǎn)數(shù) |
| nextFloat() | 讀取單精度浮點(diǎn)數(shù) |
| nextInt() | 讀取整型值 |
| nextLine() | 讀取字符串 |
| nextLong() | 讀取長(zhǎng)整型值 |
| nextShort() | 讀取短整型值 |
示例
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.println("請(qǐng)輸入您的姓名:");
String name = scanner.nextLine();
System.out.println("請(qǐng)輸入您的年齡:");
int age = scanner.nextInt();
System.out.println("請(qǐng)輸入您的身高:");
double height = scanner.nextDouble();
System.out.println("您的姓名是:" + name);
System.out.println("您的年齡是:" + age);
System.out.println("您的身高是:" + height);
}
}
處理錯(cuò)誤輸入
如果您嘗試讀取與預(yù)期類型不同的數(shù)據(jù),則會(huì)拋出 InputMismatchException 異常。您可以使用 try-catch 塊來處理此異常。
示例
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
try {
System.out.println("請(qǐng)輸入您的年齡:");
int age = scanner.nextInt();
System.out.println("您的年齡是:" + age);
} catch (InputMismatchException e) {
System.out.println("您輸入的年齡格式不正確。");
}
}
}
Scanner 類是獲取用戶輸入的便捷工具。它提供了各種方法來讀取不同類型的數(shù)據(jù),并可以處理錯(cuò)誤輸入。
Java 日期和時(shí)間
Java 日期和時(shí)間 API
Java 沒有內(nèi)置的 Date 類,但我們可以導(dǎo)入 java.time 包來使用日期和時(shí)間 API。該包包含許多日期和時(shí)間類,例如:
| 類 | 描述 |
|---|---|
| LocalDate | 表示日期(年、月、日(yyyy-MM-dd)) |
| LocalTime | 表示時(shí)間(小時(shí)、分鐘、秒和納秒(HH-mm-ss-ns)) |
| LocalDateTime | 表示日期和時(shí)間(yyyy-MM-dd-HH-mm-ss-ns) |
| DateTimeFormatter | 日期時(shí)間對(duì)象的顯示和解析格式化程序 |
顯示當(dāng)前日期
要顯示當(dāng)前日期,請(qǐng)導(dǎo)入 java.time.LocalDate 類,并使用其 now() 方法:
import java.time.LocalDate; // 導(dǎo)入 LocalDate 類
public class Main {
public static void main(String[] args) {
LocalDate myObj = LocalDate.now(); // 創(chuàng)建一個(gè)日期對(duì)象
System.out.println(myObj); // 顯示當(dāng)前日期
}
}
輸出將是:
2023-12-20
顯示當(dāng)前時(shí)間
要顯示當(dāng)前時(shí)間(小時(shí)、分鐘、秒和納秒),請(qǐng)導(dǎo)入 java.time.LocalTime 類,并使用其 now() 方法:
import java.time.LocalTime; // 導(dǎo)入 LocalTime 類
public class Main {
public static void main(String[] args) {
LocalTime myObj = LocalTime.now();
System.out.println(myObj);
}
}
輸出將是:
16:34:36.910624
顯示當(dāng)前日期和時(shí)間
要顯示當(dāng)前日期和時(shí)間,請(qǐng)導(dǎo)入 java.time.LocalDateTime 類,并使用其 now() 方法:
import java.time.LocalDateTime; // 導(dǎo)入 LocalDateTime 類
public class Main {
public static void main(String[] args) {
LocalDateTime myObj = LocalDateTime.now();
System.out.println(myObj);
}
}
輸出將是:
2023-12-20T16:34:36.910771
格式化日期和時(shí)間
上面示例中的“T”用于分隔日期和時(shí)間。您可以使用同一包中的 DateTimeFormatter 類的 ofPattern() 方法來格式化或解析日期時(shí)間對(duì)象。以下示例將從日期時(shí)間中刪除“T”和納秒:
import java.time.LocalDateTime; // 導(dǎo)入 LocalDateTime 類
import java.time.format.DateTimeFormatter; // 導(dǎo)入 DateTimeFormatter 類
public class Main {
public static void main(String[] args) {
LocalDateTime myDateObj = LocalDateTime.now();
System.out.println("格式化前:" + myDateObj);
DateTimeFormatter myFormatObj = DateTimeFormatter.ofPattern("dd-MM-yyyy HH:mm:ss");
String formattedDate = myDateObj.format(myFormatObj);
System.out.println("格式化后:" + formattedDate);
}
}
輸出將是:
格式化前: 2023-12-20T16:34:36.910287
格式化后: 20-12-2023 16:34:36
ofPattern() 方法接受各種值,您可以使用它們以不同的格式顯示日期和時(shí)間。例如:
| 值 | 示例 |
|---|---|
| yyyy-MM-dd | "1988-09-29" |
| dd/MM/yyyy | "29/09/1988" |
| dd-MMM-yyyy | "29-Sep-1988" |
| E, MMM dd yyyy | "Thu, Sep 29 1988" |
Java 日期和時(shí)間 API 提供了多種類和方法來處理日期和時(shí)間。您可以使用這些工具來顯示、格式化和解析日期和時(shí)間數(shù)據(jù)。
到此這篇關(guān)于Java實(shí)現(xiàn)輕松處理日期和時(shí)間的API小結(jié)的文章就介紹到這了,更多相關(guān)Java日期和時(shí)間API內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
SpringBoot通過配置Swagger權(quán)限解決Swagger未授權(quán)訪問漏洞問題
這篇文章主要介紹了SpringBoot通過配置Swagger權(quán)限解決Swagger未授權(quán)訪問漏洞問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2024-05-05
idea整合deepseek實(shí)現(xiàn)AI輔助編程的流程步驟
文章介紹了如何在IntelliJ IDEA中整合DeepSeek平臺(tái)實(shí)現(xiàn)AI輔助編程,步驟包括安裝CodeGPT插件、注冊(cè)DeepSeek開發(fā)者賬號(hào)、配置API密鑰以及設(shè)置API信息,需要的朋友可以參考下2025-02-02
Java線程Timer定時(shí)器用法詳細(xì)總結(jié)
在本篇文章里小編給大家整理的是關(guān)于Java線程Timer定時(shí)器用法詳細(xì)總結(jié)內(nèi)容,需要的朋友們學(xué)習(xí)下吧。2020-02-02
實(shí)例解析Java關(guān)于static的作用
只要是有學(xué)過Java的都一定知道static,也一定能多多少少說出一些作用和注意事項(xiàng)。文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2019-04-04
Apache Commons Math3探索之快速傅立葉變換代碼示例
這篇文章主要介紹了Apache Commons Math3探索之快速傅立葉變換代碼示例,具有一定參考價(jià)值,需要的朋友可以了解下。2017-10-10
spring-kafka使消費(fèi)者動(dòng)態(tài)訂閱新增的topic問題
這篇文章主要介紹了spring-kafka使消費(fèi)者動(dòng)態(tài)訂閱新增的topic問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2022-12-12
Maven profile實(shí)現(xiàn)不同環(huán)境的配置管理實(shí)踐
這篇文章主要介紹了Maven profile實(shí)現(xiàn)不同環(huán)境的配置管理實(shí)踐,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2020-09-09
Java語言實(shí)現(xiàn)基數(shù)排序代碼分享
這篇文章主要介紹了Java語言實(shí)現(xiàn)基數(shù)排序代碼分享,具有一定借鑒價(jià)值,需要的朋友可以參考下。2017-12-12
詳解Spring 框架中切入點(diǎn) pointcut 表達(dá)式的常用寫法
這篇文章主要介紹了詳解Spring 框架中切入點(diǎn) pointcut 表達(dá)式的常用寫法,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2017-04-04

