当用户输入单词“exit”时,如何使用Java中的扫描仪退出dowhile循环?
我正在写一个包含do while循环的程序。我希望用户键入“exit”以退出我的循环,但我的while语句不起作用并生成错误
错误出现在}while(!integer1.equals("exit"));
import java.util.*;
public class Integer {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
do {
System.out.println("Enter integers or exit");
int integer1 = sc.nextInt();
int integer2 = sc.nextInt();
if((integer1%integer2)==0)
System.out.println(integer1+"divisible"+integer2);
else
System.out.println("Not divisible");
}while(!integer1.equals("exit"));
}
}
# 1 楼答案
变量
integer1
在do { ... }
块之外是不可访问的,因此不能在while
语句的条件内使用它。即使integer1
是可访问的,也不能使用equals
方法,因为integer1
是int
而primitve类型没有equals
方法。。。即使他们有,一个int
永远不会等于一个String
,所以你需要改变程序的逻辑例如,可以使用以下代码: