Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/339.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如果用户输入整数而不是字符串,则使用条件语句_Java - Fatal编程技术网

Java 如果用户输入整数而不是字符串,则使用条件语句

Java 如果用户输入整数而不是字符串,则使用条件语句,java,Java,嘿,伙计们,我的实验练习需要帮助。我只想通过这个问题。。我唯一的问题是,如果用户试图在字符串“but** 我正在使用java.util.Scanner并将输入读取为字符串 else if(userInput.hasNextInt())my problem only 实验室练习保存为图像 import java.util.*; 公共类基茨比{ 公共静态void main(字符串参数[]){ 扫描仪sc=新的扫描仪(System.in); 智力得分=0; 字符串用户输入; 字符串应答键[]={A”

嘿,伙计们,我的实验练习需要帮助。我只想通过这个问题。。我唯一的问题是,如果用户试图在字符串“but** 我正在使用
java.util.Scanner
并将输入读取为
字符串

else if(userInput.hasNextInt())
my problem only

实验室练习保存为图像

import java.util.*;
公共类基茨比{
公共静态void main(字符串参数[]){
扫描仪sc=新的扫描仪(System.in);
智力得分=0;
字符串用户输入;
字符串应答键[]={A”,“C”,“B”,“B”,“C”};//A,C,
字符串多选[][]={{{“A=Leonardo Da Vinci”,“B=Albert Einstein”,“C=Stephen Hawking”},//[0][0],[0][1],[0][2]
{“A=9”、“B=8”、“C=7”}、/[1][0]、[1][1]、[1][2]
{“A=Rodrigo Duterte”,“B=Ferdinand Marcos”,“C=Ninoy Aquino”},//[2][0],[2][1],[2][2]
{“A=John F.Kennedy”,“B=Abraham Lincoln”,“C=Ronald Reagan”},//[3][0],[3][1],[3][2]
{“A=Floyd Mayweather”,“B=Manny Pacquaio”,“C=Muhammad Ali”};//[4][0],[4][1],[4][2]
{}
字符串arrQuestion[]={“文艺复兴时期的人?”,“质数?”,“最长任期的博士”,
“第一位被暗杀的美国总统”,“拳击史上最伟大的”绰号“;

对于(intx=0;x您可以使用
Integer.parseInt(userInput)
。如果此操作成功,则用户输入一个整数,否则您将得到一个异常。因此,如果它是一个整数,您可以抛出您的异常,否则您将捕获
NumberFormatException

您可以使用此简单方法测试
字符串是否为数字

public boolean isNumber(String text) {
    try {
        Integer.parseInt(text);
        return true;
    } catch (NumberFormatException exception) {
        return false;
    }
}

如果您只使用Java,请使用:

检查字符串是否仅包含unicode数字或空格(“”)。小数点不是unicode数字并返回false

null将返回false。空字符串(length()=0)将返回true

因此,在您的情况下,您可以使用:

else if(StringUtils.isNumeric(userInput))

请注意,这在Android中不起作用。相反,你需要回答什么问题?或者你是在要求我们为你做作业吗?欢迎,除了实验室要求外,我没有看到任何具体问题。即使英语很差(如我的;),你也可以专注于问题,创建一个而不是
用户输入。hasnetint()
我建议
userInput.matches(\\d+”)
。它检查字符串是否包含数字。
AABB123CC
是有效输入还是应该是
AABBCC
?在这种编码中,人们使用
开关
。并以字符的形式进行输入。
else if(StringUtils.isNumeric(userInput))