gpt4 book ai didi

java - java 测试字符串是否包含整数

转载 作者:行者123 更新时间:2023-12-02 06:28:20 25 4
gpt4 key购买 nike

我正在尝试测试字符串中是否包含整数。我知道我可以做到:

Integer.parseInt(String);

但我正在尝试复制这个 menu .

我如何测试该字符串,看看它是否是一个像六个这样的字符的字符串,或者它是否是一个实际的整数。

编辑:使用try和catch方法完成:

固定代码:

private static void decadeMenu(){
System.out.println("Enter number corresponding to your decade:");
System.out.println(" 1 - 1900-1909");
System.out.println(" 2 - 1910-1919");
System.out.println(" 3 - 1920-1929");
System.out.println(" 4 - 1930-1939");
System.out.println(" 5 - 1940-1949");
System.out.println(" 6 - 1950-1959");
System.out.println(" 7 - 1960-1969");
System.out.println(" 8 - 1970-1979");
System.out.println(" 9 - 1980-1989");
System.out.println(" 10 - 1990-1999");
System.out.println(" 11 - 2000-2005");
}

private static int decadeSelection(){
String decadeChoice;
int decade;

do {
System.out.println("Enter a decade: ");
decadeChoice = keyboard.nextLine();

decade = checkDecade(decadeChoice);

} while (!validDecade);

return decade;
}

private static int checkDecade(String decadeChoice){
int decade = 0;

try {
decade = Integer.parseInt(decadeChoice);
}
catch (Exception e){
System.out.println("That is not an integer. Please try again.");

return decade;
}

if (decade < 1 || decade > 11){
System.out.println("Enter an integer between 1 and 11");

validDecade = false;
return decade;
}
else {
validDecade = true;

return decade;
}
}

validDecade 是一个实例 boolean 值

最佳答案

Integer.parseInt 如果它不是整数,将会抛出异常。您可以使用 try ... catch block 来catch该异常;如果捕获异常,则意味着它不是整数。在这种情况下,您可以将十年设置为无效值(例如 0),以使事情变得更容易。

关于java - java 测试字符串是否包含整数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20305729/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com