gpt4 book ai didi

java - 通过控制台传递数组元素来查找数字的平均值

转载 作者:行者123 更新时间:2023-11-30 07:21:00 24 4
gpt4 key购买 nike

实际上我是这个小组的新手,也是 Java 的新手,我想知道如何通过控制台传递数组参数,最后我像这样编程:

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
class Average
{
public static void main(String []args)
{
int numbers[];

try
{
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
numbers =Integer.parseInt( br.readLine());
}
catch(NumberFormatException ne)
{
System.out.println("Invalid input: " + ne);
System.exit(0);
}
catch(IOException ioe)
{
System.out.println("I/O Error: " + ioe);
System.exit(0);
}
System.out.println(methodAverage());
}


public static int methodAverage(int...numbers)
{
int sum=0;
int avg=0;

for(int x:numbers)
{
sum+=x;
avg=sum/numbers.length;
return avg;
}
}
}

错误是

Average.java:13: error: incompatible types
numbers =Integer.parseInt( br.readLine());
^
required: int[]
found: int
1 error

我知道那会来,但我只是试过
所以我只想知道如何通过控制台传递这些数字?

最佳答案

int numbers[];

由于数组是一个对象,您需要使用 new 将其分配到堆上 int numbers[] = new int[size];.

Average.java:13: error: incompatible types
numbers =Integer.parseInt( br.readLine());

--> Integer.parseInt() 返回整数而不是数组,相反你可以使用:

for(int index=0; index<size; index++) {
numbers[index] =Integer.parseInt( br.readLine()); // add exception handling code as above
}

您正在使用 BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); 从控制台读取值,我建议您使用 Scanner 类。看看java.util.Scanner .

关于java - 通过控制台传递数组元素来查找数字的平均值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13599721/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com