вроде как и выводит нормально, а тест не проходит
package com.javarush.task.task07.task0713;
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.util.ArrayList;
import java.util.List;
/*
1. Объяви и сразу проинициализируй 4 переменных типа ArrayList (список целых чисел). Первый список будет главным, а остальные - дополнительными.
2. Считать 20 чисел с клавиатуры и добавить их в главный список.
3. Добавить в первый дополнительный список все числа из главного, которые нацело делятся на 3.
4. Добавить во второй дополнительный список все числа из главного, которые нацело делятся на 2.
5. Добавить в третий дополнительный список все остальные числа из главного.
6. Метод printList должен выводить на экран все элементы переданного списка, каждый с новой строки.
7. Программа должна вывести три дополнительных списка, используя метод printList.
*/
public class Solution {
public static void main(String[] args) throws Exception {
BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
ArrayList<Integer> mainList = new ArrayList<>();
ArrayList<Integer> list1 = new ArrayList<>();
ArrayList<Integer> list2 = new ArrayList<>();
ArrayList<Integer> list3 = new ArrayList<>();
for(int i = 0; i < 20; i++){
mainList.add(Integer.parseInt(reader.readLine()));
}
for(int i = 0; i < mainList.size(); i++){
if(mainList.get(i) % 3 == 0 && mainList.get(i) % 2 == 0){
list1.add(mainList.get(i));
list2.add(mainList.get(i));
}
if(mainList.get(i) % 3 == 0)
list1.add(mainList.get(i));
if(mainList.get(i) % 2 == 0)
list2.add(mainList.get(i));
else
list3.add(mainList.get(i));
}
Solution.printList(list1);
Solution.printList(list2);
Solution.printList(list3);
}
public static void printList(List<Integer> list) {
for(int i : list){
System.out.println(i);
}
}
}