如果我用x替换typedNum((typedNum.nextInt() > 21 && typedNum.nextInt()< 30))
,那么它运行完美。为什么呢?
import java.util.Scanner;
public class Main {
public static int number(Scanner typedNum) {
int x = 0;
int i = 0;
while (i < 1) {
x = typedNum.nextInt();
if ((typedNum.nextInt() > 21 && typedNum.nextInt()< 30)) {
System.out.println("in range");
i=1;
}
else {
System.out.println("Not in range");
}
}
System.out.println(x);
return (x);
}
public static void main(String[] args) {
Scanner y = new Scanner(System.in);
number(y);
}
}
最佳答案
调用typedNum.nextInt()
的每个实例都从STDIN
接受单独的输入。当您使用x
代替函数调用时,它可以完美地工作,因为您只需输入一次,以后再使用多次。
关于java - Java扫描器:我必须输入三次相同的值,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/61145531/