java键盘输入日期类型实现代码
时间: 2023-06-01 14:06:36 浏览: 103
以下是Java实现键盘输入日期类型的代码示例:
```
import java.util.Scanner;
import java.text.SimpleDateFormat;
import java.util.Date;
public class KeyboardInputDate {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
System.out.print("请输入日期(yyyy-MM-dd):");
String strDate = scanner.nextLine();
try {
Date date = sdf.parse(strDate);
System.out.println("输入的日期为:" + sdf.format(date));
} catch (Exception e) {
System.out.println("日期格式不正确!");
}
scanner.close();
}
}
```
该程序通过Scanner类实现了从键盘读入字符串的功能,然后使用SimpleDateFormat类将字符串转换成日期对象,并最终输出转换后的日期。如果输入的日期格式不正确,程序会提示用户重新输入。
相关问题
Java从键盘输入两个日期,计算两个日期间隔天数
可以直接使用Java内置的日期类和日期格式化类来实现。代码如下:
```java
import java.util.*;
import java.text.*;
public class Main {
public static void main(String[] args) {
// 创建日期格式化对象
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
try {
// 从键盘读取第一个日期
Scanner scanner = new Scanner(System.in);
System.out.println("请输入第一个日期(格式为yyyy-MM-dd):");
String date1Str = scanner.nextLine();
Date date1 = sdf.parse(date1Str);
// 从键盘读取第二个日期
System.out.println("请输入第二个日期(格式为yyyy-MM-dd):");
String date2Str = scanner.nextLine();
Date date2 = sdf.parse(date2Str);
// 计算两个日期间隔天数
long interval = Math.abs(date2.getTime() - date1.getTime()) / (1000 * 60 * 60 * 24);
System.out.println("两个日期间隔天数为:" + interval);
} catch(ParseException ex) {
System.out.println("日期格式不正确!");
}
}
}
```
当然,这只是一个简单示例,实际应用中还需要考虑很多情况,比如输入日期的合法性、日期之间的大小顺序等等。
使用java编写代码:从键盘输入任意两个日期,两个日期之间使用回车换行,输出这两个日期之间相差的天数,输入日期的格式为:年/月/日。
可以使用Java中的LocalDate类来处理日期,并使用Period类来计算两个日期之间的差距。以下是示例代码:
```java
import java.time.LocalDate;
import java.time.Period;
import java.util.Scanner;
public class DateDifference {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.println("请输入第一个日期(格式为年/月/日):");
String date1Str = scanner.nextLine();
LocalDate date1 = LocalDate.parse(date1Str);
System.out.println("请输入第二个日期(格式为年/月/日):");
String date2Str = scanner.nextLine();
LocalDate date2 = LocalDate.parse(date2Str);
scanner.close();
Period period = Period.between(date1, date2);
int days = period.getDays();
int months = period.getMonths();
int years = period.getYears();
System.out.println("两个日期相差 " + years + " 年 " + months + " 月 " + days + " 天。");
}
}
```
运行程序后,会提示用户输入两个日期,然后计算它们之间相差的天数,并输出结果。
阅读全文