Я искал ответ для ответа, но не имел большой удачи, пытаясь заставить следующее работать.Поиск максимального значения массива
я в настоящее время принимаю вводный курс программирования и столкнулся с упражнением, когда мне нужно написать две функции (то есть метод, который возвращает значение), что
а) Возвращает максимальное значение и
б) Среднее значение, из массива двойных значений.
Ниже приведен код, где я собираюсь. Я успешно создал метод, который позволяет пользователю вводить количество элементов массива и инициализировать их значением. Тем не менее, я испытываю трудности с получением метода вычисления максимального значения. Мне явно сказали использовать метод Math.max. Однако всякий раз, когда я пытаюсь запустить код, я получаю следующее сообщение об ошибке после того, как пользователь инициализирован массив:
"Exception in thread "main" java.lang.Error: Unresolved compilation problem:
The method max(double, double) in the type Math is not applicable for the arguments (double, double[])"
Из того, что я прочитал в API Math.max
может обрабатывать двойные типы. Я немного не знаю, как это исправить. У меня есть ощущение, что мне нужно создать цикл, но я был под впечатлением, что цикл foreach
эквивалентен.
Все ответы будут оценены.
package com.gc01.lab2;
import java.util.Scanner;
public class exercise22 {
private static double [] numberInput(){
Scanner input = new Scanner (System.in);
System.out.println("How many numbers are in the array?");
int count = input.nextInt();
double [] array = new double [count];
for (int i = 0; i < count; ++i){
System.out.println("Enter number " + i + ": ");
array [i] = input.nextDouble();
}
return array;
}
private double maximum (double [] array){
double max = 0.0;
for (double value : array){
max = Math.max(0.0, array);
}
return max;
}
public static void main(String[] args) {
// TODO Auto-generated method stub
final exercise22 object = new exercise22();
System.out.println("The maximum number inputted is " +
object.maximum(object.numberInput()));
}
}
Знаете ли вы разницу между 'double' и' double [] '? –
Не проходите в массиве, проходите в двух двухместных. Например, 'max' и' value'. –