菜鸟 Java 问题 - Scanner、int 和用户输入
Rookie Java question - Scanner, int and user input
Overflower们大家好!
我开始使用 Java 并想创建一个小程序,可以在其中输入 5 个数字并打印出总和和平均值。
该程序运行并完成了它的工作,但我觉得必须有一种比我所做的更聪明的方法/方式。
import java.util.Scanner;
public class Calc {
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
System.out.println("5 random numbers");
int num1 = input.nextInt();
int num2 = input.nextInt();
int num3 = input.nextInt();
int num4 = input.nextInt();
int num5 = input.nextInt();
int sum = num1 + num2 + num3 + num4 + num5;
int avg = (num1 + num2 + num3 + num4 + num5)/5;
System.out.println("Sum is" + sum + " and the average is " + avg);```
是否可以在一行中声明所有数字?
您可以使用 BufferedReader
。试试这个。在这里,您需要在一行中提及所有数字。
例如:1 2 3 4 5
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
String[] values = line.split(" ");
int[] arr = new int[values.length];
int sum=0;
for (int i = 0; i < values.length; i++) {
arr[i] = Integer.parseInt(values[i]);
sum+=arr[i];
}
double avg = sum/arr.length;
System.out.println("Sum is" + sum + " and the average is " + avg);
Overflower们大家好!
我开始使用 Java 并想创建一个小程序,可以在其中输入 5 个数字并打印出总和和平均值。 该程序运行并完成了它的工作,但我觉得必须有一种比我所做的更聪明的方法/方式。
import java.util.Scanner;
public class Calc {
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
System.out.println("5 random numbers");
int num1 = input.nextInt();
int num2 = input.nextInt();
int num3 = input.nextInt();
int num4 = input.nextInt();
int num5 = input.nextInt();
int sum = num1 + num2 + num3 + num4 + num5;
int avg = (num1 + num2 + num3 + num4 + num5)/5;
System.out.println("Sum is" + sum + " and the average is " + avg);```
是否可以在一行中声明所有数字?
您可以使用 BufferedReader
。试试这个。在这里,您需要在一行中提及所有数字。
例如:1 2 3 4 5
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
String[] values = line.split(" ");
int[] arr = new int[values.length];
int sum=0;
for (int i = 0; i < values.length; i++) {
arr[i] = Integer.parseInt(values[i]);
sum+=arr[i];
}
double avg = sum/arr.length;
System.out.println("Sum is" + sum + " and the average is " + avg);