Ребят, объясните.Задачу решил. но не доконца понимаю что куда передается и тд
public class Solution {
public static void main(String[] args) throws Exception {
List<Integer> integer = getIntegerList();
System.out.println(getMinimum(integer));
}
public static int getMinimum(List<Integer> array) {
int min = Collections.min(array);// Найти минимум тут
return min;
}
public static List<Integer> getIntegerList() throws IOException {
BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
ArrayList<Integer> mas = new ArrayList<>();
int N = Integer.parseInt(reader.readLine());
for (int i = 0; i <N ; i++) {
mas.add(Integer.parseInt(reader.readLine()));
}
// Создать и заполнить список тут
return mas;
}
}
Anton
22 уровень
Помогите разобраться
Решен
Комментарии (5)
- популярные
- новые
- старые
Для того, чтобы оставить комментарий Вы должны авторизоваться
Ksenia Volkova Java Developer в DXC Master
6 декабря 2019, 17:22решение
Потому что у каждого метода свои локальные переменные и их можно назвать как угодно.
Кто-то, кто писал этот код (видимо, не ты), решил их назвать именно так. (Зря, конечно - с неймингом у него проблема).
Например, метод getIntegerList() возвращает список mas - это его локальная переменная.
List<Integer> integer = getIntegerList();
Здесь значение этой локальной переменной передается в локальную переменную уже другого метода, main, которая называется integer
System.out.println(getMinimum(integer));
тут эту переменную из метода main передаем в метод getMinimum - ее значение присваивается локальной переменной метода getMinimum, которая называется array
+2
Anton
6 декабря 2019, 20:33
как раз-таки я его писал. А написал так, стобы поэкспериментировать и понять, что можно назвать их как угодно, потому что это локальнве переменные
0
Ksenia Volkova Java Developer в DXC Master
6 декабря 2019, 20:45
В таком случае упрек про нейминг относится именно к тебе. Не надо называть переменные именами, которые могут ввести в заблуждение.
array - это массив, mas - видимо, тоже сокращение от массива. Но List (и в том числе ArrayList) - это не массив.
0
Anton
6 декабря 2019, 20:54
уже после того, как прошел проверку, нарочно изменил имена на первое, что пришло в голову. Но я понимаю, что так называть не нужно, т.к потом запутаешься, спасибо :)
0
Anton
6 декабря 2019, 17:13
почему везде разные названия
List<Integer> integer = getIntegerList();
System.out.println(getMinimum(integer));
тут integer;
public static int getMinimum(List<Integer> array)]
тут array;
ArrayList<Integer> mas = new ArrayList<>();
тут mas;
Пожалуйста, объясните подробнее
0