Java 日期和时间 API:实用技巧与示例 - 轻松处理日期和时间 ...

打印 上一主题 下一主题

主题 926|帖子 926|积分 2778

Java 用户输入(Scanner)

简介

Scanner 类用于获取用户输入,它位于 java.util 包中。
使用 Scanner 类

要使用 Scanner 类,请执行以下步调:

  • 导入 java.util.Scanner 包。
  • 创建一个 Scanner 对象,并将其初始化为 System.in。
  • 使用 Scanner 对象的方法读取用户输入。
示例
  1. import java.util.Scanner;
  2. public class Main {
  3.     public static void main(String[] args) {
  4.         Scanner scanner = new Scanner(System.in);
  5.         System.out.println("请输入您的姓名:");
  6.         String name = scanner.nextLine();
  7.         System.out.println("请输入您的年龄:");
  8.         int age = scanner.nextInt();
  9.         System.out.println("您的姓名是:" + name);
  10.         System.out.println("您的年龄是:" + age);
  11.     }
  12. }
复制代码
读取不同类型的数据

Scanner 类提供了各种方法来读取不同类型的数据:
方法描述nextBoolean()读取布尔值nextByte()读取字节值nextDouble()读取双精度浮点数nextFloat()读取单精度浮点数nextInt()读取整型值nextLine()读取字符串nextLong()读取长整型值nextShort()读取短整型值示例
  1. import java.util.Scanner;
  2. public class Main {
  3.     public static void main(String[] args) {
  4.         Scanner scanner = new Scanner(System.in);
  5.         System.out.println("请输入您的姓名:");
  6.         String name = scanner.nextLine();
  7.         System.out.println("请输入您的年龄:");
  8.         int age = scanner.nextInt();
  9.         System.out.println("请输入您的身高:");
  10.         double height = scanner.nextDouble();
  11.         System.out.println("您的姓名是:" + name);
  12.         System.out.println("您的年龄是:" + age);
  13.         System.out.println("您的身高是:" + height);
  14.     }
  15. }
复制代码
处理错误输入

如果您尝试读取与预期类型不同的数据,则会抛出 InputMismatchException 异常。您可以使用 try-catch 块来处理此异常。
示例
  1. import java.util.Scanner;
  2. public class Main {
  3.     public static void main(String[] args) {
  4.         Scanner scanner = new Scanner(System.in);
  5.         try {
  6.             System.out.println("请输入您的年龄:");
  7.             int age = scanner.nextInt();
  8.             System.out.println("您的年龄是:" + age);
  9.         } catch (InputMismatchException e) {
  10.             System.out.println("您输入的年龄格式不正确。");
  11.         }
  12.     }
  13. }
复制代码
Scanner 类是获取用户输入的便捷工具。它提供了各种方法来读取不同类型的数据,并可以处理错误输入。
Java 日期和时间

Java 日期和时间 API

Java 没有内置的 Date 类,但我们可以导入 java.time 包来使用日期和时间 API。该包包含许多日期和时间类,比方:
类描述LocalDate表示日期(年、月、日(yyyy-MM-dd))LocalTime表示时间(小时、分钟、秒和纳秒(HH-mm-ss-ns))LocalDateTime表示日期和时间(yyyy-MM-dd-HH-mm-ss-ns)DateTimeFormatter日期时间对象的显示和解析格式化步伐显示当前日期

要显示当前日期,请导入 java.time.LocalDate 类,并使用其 now() 方法:
  1. import java.time.LocalDate; // 导入 LocalDate 类
  2. public class Main {
  3.     public static void main(String[] args) {
  4.         LocalDate myObj = LocalDate.now(); // 创建一个日期对象
  5.         System.out.println(myObj); // 显示当前日期
  6.     }
  7. }
复制代码
输出将是:
  1. 2023-12-20
复制代码
显示当前时间

要显示当前时间(小时、分钟、秒和纳秒),请导入 java.time.LocalTime 类,并使用其 now() 方法:
  1. import java.time.LocalTime; // 导入 LocalTime 类
  2. public class Main {
  3.     public static void main(String[] args) {
  4.         LocalTime myObj = LocalTime.now();
  5.         System.out.println(myObj);
  6.     }
  7. }
复制代码
输出将是:
  1. 16:34:36.910624
复制代码
显示当前日期和时间

要显示当前日期和时间,请导入 java.time.LocalDateTime 类,并使用其 now() 方法:
  1. import java.time.LocalDateTime; // 导入 LocalDateTime 类
  2. public class Main {
  3.     public static void main(String[] args) {
  4.         LocalDateTime myObj = LocalDateTime.now();
  5.         System.out.println(myObj);
  6.     }
  7. }
复制代码
输出将是:
  1. 2023-12-20T16:34:36.910771
复制代码
格式化日期和时间

上面示例中的“T”用于分隔日期和时间。您可以使用同一包中的 DateTimeFormatter 类的 ofPattern() 方法来格式化或解析日期时间对象。以下示例将从日期时间中删除“T”和纳秒:
  1. import java.time.LocalDateTime; // 导入 LocalDateTime 类
  2. import java.time.format.DateTimeFormatter; // 导入 DateTimeFormatter 类
  3. public class Main {
  4.     public static void main(String[] args) {
  5.         LocalDateTime myDateObj = LocalDateTime.now();
  6.         System.out.println("格式化前:" + myDateObj);
  7.         DateTimeFormatter myFormatObj = DateTimeFormatter.ofPattern("dd-MM-yyyy HH:mm:ss");
  8.         String formattedDate = myDateObj.format(myFormatObj);
  9.         System.out.println("格式化后:" + formattedDate);
  10.     }
  11. }
复制代码
输出将是:
  1. 格式化前: 2023-12-20T16:34:36.910287
  2. 格式化后: 20-12-2023 16:34:36
复制代码
ofPattern() 方法担当各种值,您可以使用它们以不同的格式显示日期和时间。比方:
值示例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 日期和时间 API 提供了多种类和方法来处理日期和时间。您可以使用这些工具来显示、格式化和解析日期和时间数据。
最后

为了方便其他设备和平台的小伙伴观看往期文章:
微信公众号搜索:Let us Coding,关注后即可获取最新文章推送
看完如果觉得有帮助,欢迎 点赞、收藏、关注

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

自由的羽毛

金牌会员
这个人很懒什么都没写!

标签云

快速回复 返回顶部 返回列表