Java如何判断从控制台输入的“09/12”类型的日期是否合法
时间: 2023-06-02 21:05:26 浏览: 49
可以使用SimpleDateFormat类的parse方法来判断日期是否合法。代码示例如下:
```java
SimpleDateFormat sdf = new SimpleDateFormat("MM/dd");
sdf.setLenient(false);
try {
Date date = sdf.parse("09/12");
System.out.println("合法日期");
} catch (ParseException e) {
System.out.println("不合法日期");
}
```
在解析日期之前,需要通过setLenient方法将其设置为“严格模式”,这样如果输入的日期格式不正确,就会抛出ParseException异常。如果没有抛出异常,就说明输入的日期是合法的。
相关问题
java从控制台输入一个字符串,判断是否是回文数
回文数是指正着读和倒着读都一样的数,比如121、12321等。可以按以下步骤实现判断一个字符串是否为回文数:
1. 从控制台输入一个字符串,使用`Scanner`类可以方便地实现这一步骤。
```java
Scanner scanner = new Scanner(System.in);
System.out.print("请输入一个字符串:");
String str = scanner.nextLine();
```
2. 将字符串转换为字符数组,方便逐个字符比较。
```java
char[] charArray = str.toCharArray();
```
3. 使用双指针法逐个比较字符。双指针法是指定义两个指针,一个指向字符串的头部,一个指向尾部,然后向中间逐个比较字符。如果所有字符都相同,则字符串是回文数,否则不是。
```java
int left = 0;
int right = charArray.length - 1;
while (left < right) {
if (charArray[left] != charArray[right]) {
System.out.println(str + " 不是回文数");
return;
}
left++;
right--;
}
System.out.println(str + " 是回文数");
```
完整代码如下:
```java
import java.util.Scanner;
public class Palindrome {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.print("请输入一个字符串:");
String str = scanner.nextLine();
char[] charArray = str.toCharArray();
int left = 0;
int right = charArray.length - 1;
while (left < right) {
if (charArray[left] != charArray[right]) {
System.out.println(str + " 不是回文数");
return;
}
left++;
right--;
}
System.out.println(str + " 是回文数");
}
}
```
java从控制台输入数据
在 Java 中,可以使用 `Scanner` 类从控制台输入数据,具体步骤如下:
1. 导入 `java.util.Scanner` 包。
2. 创建一个 `Scanner` 对象,用于读取用户输入。
3. 使用 `Scanner` 对象的 `next()` 方法读取字符串类型的输入,或者使用 `nextInt()`、`nextDouble()` 等方法读取其他类型的输入。
4. 最后记得关闭 `Scanner` 对象。
以下是一个示例代码:
```java
import java.util.Scanner;
public class InputFromConsole {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.print("请输入一个字符串:");
String str = scanner.next();
System.out.println("你输入的字符串是:" + str);
System.out.print("请输入一个整数:");
int num = scanner.nextInt();
System.out.println("你输入的整数是:" + num);
scanner.close();
}
}
```
运行程序后,在控制台输入一个字符串和一个整数,输出结果如下:
```
请输入一个字符串:Hello, world!
你输入的字符串是:Hello,
请输入一个整数:123
你输入的整数是:123
```