Java 如果变量中的输入不是数字,如何输入无效结果(输出) System.out.println(“插入第一个数字:”); 扫描仪ad=新扫描仪(System.in); int y=ad.nextInt(); System.out.println(“插入第二个数字:”); 扫描仪er=新扫描仪(System.in); int x=er.nextInt(); intz; z=x+y; 如果(z>10){ 系统输出打印项次(z+“大于10”); }else if(z10){ 系统输出打印项次(z+“大于10”); }else if(z

Java 如果变量中的输入不是数字,如何输入无效结果(输出) System.out.println(“插入第一个数字:”); 扫描仪ad=新扫描仪(System.in); int y=ad.nextInt(); System.out.println(“插入第二个数字:”); 扫描仪er=新扫描仪(System.in); int x=er.nextInt(); intz; z=x+y; 如果(z>10){ 系统输出打印项次(z+“大于10”); }else if(z10){ 系统输出打印项次(z+“大于10”); }else if(z,java,Java,当我输入字符而不是数字时,我希望每个if语句的输出都是错误的。 并使输出显示我输入的字符无效。使用该方法时,如果输入值不是数字,它将抛出InputMismatchException,然后可以使用try-catch块和循环进行验证。您可以使用助手方法执行此操作,并避免在读取这些值时重复自己的操作: System.out.println("Insert first number : "); Scanner ad = new Scanner(System.in); int y = ad.nextInt

当我输入字符而不是数字时,我希望每个if语句的输出都是错误的。 并使输出显示我输入的字符无效。

使用该方法时,如果输入值不是数字,它将抛出InputMismatchException,然后可以使用try-catch块和循环进行验证。您可以使用助手方法执行此操作,并避免在读取这些值时重复自己的操作:

System.out.println("Insert first number : ");
Scanner ad = new Scanner(System.in);
int y = ad.nextInt();
System.out.println("Insert Second Number: ");
Scanner er = new Scanner(System.in);
int x = er.nextInt();

int z;
z = x + y;

if (z > 10) {
    System.out.println(z + " is greater than 10");
} else if (z < 9) {
    System.out.println(z + " is less than 10");
} else {
    System.out.println(z + " is equal to 10");
}
import java.util.InputMismatchException;
导入java.util.Scanner;
公开课演示{
公共静态void main(字符串[]args){
int x=readNumber();
int y=readNumber();
intz;
z=x+y;
如果(z>10){
系统输出打印项次(z+“大于10”);
}else if(z<9){
系统输出println(z+“小于10”);
}否则{
系统输出println(z+“等于10”);
}
}
私有静态int readNumber(){
扫描仪=新的扫描仪(System.in);
布尔有效输入;
int结果=0;
做{
试一试{
系统输出打印(“插入一个数字:”);
结果=scanner.nextInt();
validInput=true;
}捕获(输入不匹配异常e){
System.out.println(“不是有效数字!”);
validInput=假;
scanner.nextLine();//使用结束行字符
}
}而(!validInput);
返回结果;
}
}

另一种选择是使用该方法。

为什么要使用2个扫描实例?当您接受用户的值时,应该在开始时检查该值是否为int。还有可能重复,更多提示我认为要输入这两个变量,我昨天刚开始学习java我只是在那里编写if,else if,但他加了扫描器,要我分析整件事。
import java.util.InputMismatchException;
import java.util.Scanner;

public class Demo {

    public static void main(String[] args) {
        int x = readNumber();
        int y = readNumber();

        int z;
        z = x + y;

        if (z > 10) {
            System.out.println(z + " is greater than 10");
        } else if (z < 9) {
            System.out.println(z + " is less than 10");
        } else {
            System.out.println(z + " is equal to 10");
        }
    }

    private static int readNumber() {
        Scanner scanner = new Scanner(System.in);
        boolean validInput;
        int result = 0;
        do {
            try {
                System.out.print("Insert a number : ");
                result = scanner.nextInt();
                validInput = true;
            } catch (InputMismatchException e) {
                System.out.println("Not a valid number!");
                validInput = false;
                scanner.nextLine(); // to consume the endline character
            }
        } while (!validInput);
        return result;
    }
}