Компилятор не принимает решение по 2 пунктам. Где ошибка?
Списки объявляются в указанном порядке.
Так же выводятся все значения их элементов в консоль с новой строки.
package com.javarush.task.task07.task0713;
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.util.ArrayList;
public class Solution {
static ArrayList<Integer> listOriginal = new ArrayList<Integer>(); //оригинальный список listOriginal
static ArrayList<Integer> listBezOstatkaNa3 = new ArrayList<Integer>(); //первый дополнительный список listBezOstatkaNa3
static ArrayList<Integer> listBezOstatkaNa2 = new ArrayList<Integer>(); //второй дополнительный список listBezOstatkaNa2
static ArrayList<Integer> listDrob = new ArrayList<Integer>(); //третий дополнительный список listDrob
static int x = 0; //поле для хранения значения индекса
public static void main(String[] args) throws Exception {
for(int i = 0; i < 20; i++) { //в данном цикле заносим 20 чисел в первый список "listOriginal"
BufferedReader reader = new BufferedReader(new InputStreamReader(System.in)); // методы потока
listOriginal.add(Integer.parseInt(reader.readLine())); //заносим поле потока сразу в лист, без создания лишней переменной
}
for(int i = 0; i < 20; i++) { //в данном цикле сортируем числа по 3 спискам (I - число делится на цело на 3, II - делится на цело на 2, III - делится с остатком)
x = listOriginal.get(i); //получаем значение индексов оригинального списка, методом перебора в цикле, для сортировки в списки
if(x % 3 == 0){ //проверка для пополнение первого списка (где помещаются числа нацело делящиеся на 3)
listBezOstatkaNa3.add(x);
}
if(x % 2 == 0){ //проверка для пополнение второго списка (где помещаются числа нацело делящиеся на 2)
listBezOstatkaNa2.add(x);
}
if(x % 3 != 0 && x % 2 != 0){ //проверка для пополнение третьего списка (куда помещаются все остальные числа)
listDrob.add(x);
}
}
printList(listBezOstatkaNa3); //выводим первый дополнительный список вызывая метод printList
printList(listBezOstatkaNa2); //выводим второй дополнительный список вызывая метод printList
printList(listDrob); //выводим третий дополнительный список вызывая метод printList
}
public static void printList(ArrayList<Integer> list) { //метод для вывода в консоль списков
for(Integer i : list) { //цикл for each с перебором элементов списка для вывода в консоль
System.out.println(i); //последовательный вывод в консоль элементов списка
}
}
}