java - 为什么这个 while 循环条件不停止循环?
问题描述
System.out.println("Please enter your grades: ");
while(scanner.nextInt() != -1){
numbers.add(scanner.nextInt());
}
我有一个while循环,一旦用户输入“-1”就应该停止。相反,在被识别之前将“-1”插入到我的数组列表中。我想了解为什么在检测到“-1”时循环不会立即停止。
解决方案
你调用nextInt
了两次,每次都返回一个新的 int 。尝试这个:
while(true){
int val = scanner.nextInt();
if (val == -1) {
break;
}
numbers.add(val);
}
推荐阅读
- python - 在 Keras 的 ImageDataGenerator.flow_from_directory 中处理无效/损坏的图像文件
- reporting-services - 合并 SSRS 中的行
- rust - 为什么在调试和发布模式下存储和加载 AVX2 256 位向量会产生不同的结果?
- c - 完成前程序退出
- powershell - 使用powershell检查文件内容是否存在
- php - 从具有关系的数据库中检索数据
- python - Python Selenium `move_by_offset` 不起作用
- kotlin - Kotlin 等待不暂停?
- python - 我收到以下错误:ModuleNotFoundError: No module named
- python - keras的逻辑回归分类器