Java 如何将此整数变量修复为字符串?

Java 如何将此整数变量修复为字符串?,java,Java,我有一个整数变量,但我希望它 如果用户输入字符串“退出”,它将关闭程序 public static void input() { System.out.println("Input: "); Integer choice = scan.nextInt(); choiceExecute(choice); if (choice == 'quit') { goBack(); } } 提前感谢。使用scan.hasnetint()检查输入是否为整

我有一个整数变量,但我希望它 如果用户输入字符串“退出”,它将关闭程序

public static void input() {
    System.out.println("Input: ");
    Integer choice = scan.nextInt();
    choiceExecute(choice);
    if (choice == 'quit') {
        goBack();
    }
}

提前感谢。

使用
scan.hasnetint()
检查输入是否为整数。如果是这样,您可以使用
scan.nextInt()用于获取整数。如果返回
false
,则可以使用
scan.nextLine()
读取该值。如果这等于退出,则程序应关闭。

一种方法是使用以下命令读取字符串:

scan.nextLine();
(因此,您可以轻松检查“退出”)

然后使用以下命令将字符串转换为整数:

Integer.parseInt(myString);

这里有几件事不对。 这仅搜索整数:

Integer choice = scan.nextInt();
但是,这将返回整行:

String line = scan.nextLine();
从这里,您可以检查是否等于退出:

if(line.equals("quit"){
    // do your processing
    goBack();
}else{
    Integer num = Integer.parseInt(line);
    // do your processing on the number
    choiceExecute(num);
}
当然,这是假设您每行只存储一个项目,并且所有其他不等于“退出”的行实际上都是数字。以下是我假设您的数据的外观:

221
357
quit
43
565
quit

Choice是一个整数,因此永远不会是“退出”。同样,为了比较字符串,请使用.equals(),而不是=
'quit'
不是字符串,它是一个4字符的
char
literal。。。无效。可能重复使用系统。退出(0)
@Ahmad
goBack()
可能与系统不同。退出(0)。。。