java - 我对此特定代码的输出有疑问
问题描述
这是代码:
import java.util.Scanner;
public class javapractice {
public static void main(String[] Args) {
int XX = 0;
int count = 0;
Scanner input = new Scanner(System.in);
while (true) {
System.out.println("Enter Number :");
int number = input.nextInt();
boolean nextint = input.hasNextInt();
if (nextint) {
count++;
XX += number;
} else {
break;
}
input.nextLine();
}
int YY = XX/count;
System.out.println("SUM = " + XX + " AVG = " + YY);
input.close();
}
}
我希望输出打印输入数字的总和,当我输入时让我们说一个像“Hello”这样的词,它会跳出循环并打印Sum 0 0
and AVG = 0
。
我遇到的问题是,每当我输入数字时,它都会要求我输入两次,之后不会在行中取下一个数字,每当我输入字符串变量时,让我们说“I”,它会输出 Inputmismatch . 有什么办法可以解决这个问题?
解决方案
试试这个代码:
int XX = 0;
int count = 0;
Scanner input = new Scanner(System.in);
while (true) {
System.out.println("Enter Number: ");
if (input.hasNextInt()) {
count++;
XX += input.nextInt();
} else {
break;
}
}
int YY = XX / count;
System.out.println("SUM = " + XX + " AVG = " + YY);
input.close();
推荐阅读
- assembly - 无法让 LCD1602 显示器与 ATmega2560 一起使用
- batch-file - 获取存储在文本文件中的值并将它们转换为变量
- mysql - 为什么我的函数不能在 db.execute 中为 json 运行?
- c - 数组间接问题
- javascript - 如果在 Array.map 期间键已经存在,则将值推送到对象
- python - 如何在 Raspberry pi 中处理串行读取值
- git - 当上面有多个分支时,如何在过去的一些任意提交之间注入一个提交?
- javascript - 等效于 React 的 _isMounted for vanilla javascript 的 Stripe/js(元素)
- java - 删除 ControlsFX CheckTreeView 中父子检查状态之间的连接
- azure - 无法保存 Kik 频道配置 - Azure 机器人服务