早上好,
我目前正在学习编码/ Java。我需要做的任务是;制作一个程序,接受用户输入并返回最高和最低的条目。我必须使用while循环来保持简单。目前我得到了这个:
System.out.println("Enter numbers, Q to finish: ");
int largest = sc.nextInt();
int smallest = sc.nextInt();
while (sc.hasNextInt()) {
int number = sc.nextInt();
if(number > largest) {
largest = number;
}
else if(number < smallest){
smallest = number;
}
}
System.out.printf("Largest: %d Smallest: %d", largest, smallest);
问题是它会跳过第一个用户条目。经过一些测试后,我看到当我只输入1个数字然后按Q时出现错误。如果我进入; 10 - 20 - 30,回报是;最大:30最小:20。
任何人都知道为什么它会跳过第一个用户条目?
答案 0 :(得分:2)
替换这两行:
int largest = sc.nextInt();
int smallest = sc.nextInt();
与
int largest = sc.nextInt();
int smallest = largest;