В каком редакторе пишешь?
else if (x % 2 == 0)
{
even.add(x);} //<------- лишняя скобка
}
продолжение:
//Эти объекты объявлены в методе main(), и их видно только в нем.
ArrayList<Integer> even = new ArrayList<Integer>();
ArrayList<Integer> odd = new ArrayList<Integer>();
ArrayList<Integer> other = new ArrayList<Integer>();
//этот метод не может найти переменные even, odd, other. статический метод может видеть только другие статические методы/переменные/др и то, что передаешь в сигнатуре(в скобочках)
public static void printList(){
}
Выходов много, вот 2 из них:
class Ideone{
//выносишь переменные из метода main и делаешь их static
static ArrayList<Integer> even = new ArrayList<Integer>();
static ArrayList<Integer> odd = new ArrayList<Integer>();
static ArrayList<Integer> other = new ArrayList<Integer>();
}
или
//переписываешь метод, и в мейне при его вызове передаешь сви списки
public static void printList(List<Integer> even, List<Integer> odd, List<Integer> other ){
}