用java语言编写一个程序,实现下面功能,让用户输入字符串型数据,如果输入的字符串不是一个整数,就提示他反复输入,直到输入一个整数为止
时间: 2023-09-03 10:28:23 浏览: 91
java获取用户输入的字符串方法
5星 · 资源好评率100%
### 回答1:
可以使用Java中的Scanner类和try-catch语句来实现该功能。以下是示例代码:
```java
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
int num = 0;
boolean validInput = false;
while (!validInput) {
System.out.print("请输入一个整数:");
String input = scanner.nextLine();
try {
num = Integer.parseInt(input);
validInput = true;
} catch (NumberFormatException e) {
System.out.println("输入无效,请重新输入!");
}
}
System.out.println("输入的整数是:" + num);
}
}
```
在程序中,我们首先创建了一个Scanner对象来读取用户输入的数据。然后使用一个while循环来不断提示用户输入,直到输入的数据是一个整数为止。当用户输入一个字符串时,我们尝试将其转换为整数类型,如果转换成功,就将validInput标志设置为true并跳出循环;否则,就捕获NumberFormatException异常并提示用户重新输入。最后,输出输入的整数。
### 回答2:
可以使用Java中的Scanner类来实现该功能。首先导入java.util.Scanner包,然后在主函数中创建一个Scanner对象来读取用户的输入。
接下来使用一个循环,不断询问用户要输入的字符串,并使用Scanner的nextLine()方法将输入的字符串保存到一个变量中。
然后使用Java中的try-catch语句来判断输入的字符串是否能成功转换为整数。在try块中,将用户输入的字符串使用Integer.parseInt()方法转换为整数,如果成功转换,则跳出循环。如果转换失败,则在catch块中捕获异常,并输出提示用户重新输入的信息。
以下是实现该功能的Java代码:
```java
import java.util.Scanner;
public class IntegerInput {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
int num = 0;
boolean isInputValid = false;
while (!isInputValid) {
System.out.print("请输入一个整数:");
String input = scanner.nextLine();
try {
num = Integer.parseInt(input);
isInputValid = true;
} catch (NumberFormatException e) {
System.out.println("输入无效,请重新输入。");
}
}
System.out.println("您输入的整数是:" + num);
}
}
```
通过这个程序,用户可以输入任意字符串,直到输入一个整数为止。程序会一直提示用户重新输入,直到输入的字符串能够成功转换为整数。最后,程序会输出用户输入的整数。
### 回答3:
可以使用Java中的Scanner类来实现用户输入,并使用try-catch语句来检测输入是否为整数。
首先导入Scanner类:
import java.util.Scanner;
然后编写程序如下:
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
int num = 0;
boolean isInvalid = true;
while (isInvalid) {
System.out.print("请输入一个整数:");
try {
num = Integer.parseInt(scanner.nextLine());
isInvalid = false; // 输入为整数,跳出循环
} catch (NumberFormatException e) {
System.out.println("输入的不是一个整数,请重新输入。");
}
}
System.out.println("输入的整数为:" + num);
}
}
程序中定义了一个Scanner对象scanner来接收用户输入,一个整数变量num用于保存输入的整数。isInvalid变量用于判断用户输入是否为整数,初始值为true。
通过while循环和try-catch语句来实现反复要求用户输入,直到输入的字符串为一个整数为止。在循环中,首先提示用户输入一个整数,并使用Integer.parseInt()方法将输入的字符串转换为整数。如果输入的字符串不能转换为整数,会抛出NumberFormatException异常,在catch块中提示用户重新输入。如果输入的字符串可以转换为整数,将isInvalid设为false,跳出循环。
在循环外部,输出用户输入的整数num。
程序运行后,会要求用户输入整数,如果输入的字符串不是一个整数,会提示用户重新输入,直到输入一个整数为止。
阅读全文