Компилируется нормально и вывод, вроде бы, соответствует требованиям задания. В чем ошибка? Спасибо.
package com.javarush.task.task08.task0822;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.ArrayList;
import java.util.List;
/*
Минимальное из N чисел
*/
/**
Минимальное из N чисел
1. Ввести с клавиатуры число N.
2. Считать N целых чисел и заполнить ими список - метод getIntegerList.
3. Найти минимальное число среди элементов списка - метод getMinimum.
Требования:
1. Программа должна выводить текст на экран.
2. Программа должна считывать значения с клавиатуры.
3. Класс Solution должен содержать только три метода.
4. Метод getIntegerList() должен считать с клавиатуры число N, потом вернуть список
размером N элементов, заполненный числами с клавиатуры.
5. Метод getMinimum() должен вернуть минимальное число среди элементов списка.
6. Метод main() должен вызывать метод getIntegerList().
7. Метод main() должен вызывать метод getMinimum().
*/
public class Solution {
public static void main(String[] args) throws Exception {
List<Integer> integerList = getIntegerList();
System.out.println("Min number is: " + getMinimum(integerList));
}
public static int getMinimum(List<Integer> array) throws IOException {
// Найти минимум тут
BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
Integer min = Integer.parseInt(reader.readLine());
for (int i = 0; i < array.size(); i++) {
if (array.get(i) < min)
min = array.get(i);
}
return min;
}
public static List<Integer> getIntegerList() throws IOException {
// Создать и заполнить список тут
BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
System.out.println("Enter N: ");
int N = Integer.parseInt(reader.readLine());
List<Integer> list = new ArrayList<>(N);
System.out.println("Enter numbers: ");
for (int i = 0; i < N-1; i++) {
Integer num = Integer.parseInt(reader.readLine());
list.add(num);
}
return list;
}
}