Вам не удалось учесть индекс каждого элемента, который изменяется при каждом удалении элемента. Ниже приведены выходные данные для того же теста, который вы дали, за исключением нескольких операторов печати для отслеживания состояния списка. Это должно прояснить, почему ваш код ведет себя так, как он есть:
Enter a number between 1 y 5: 2
List : [0, 12, 16, 0, 13, 17, 5, 12, 1, 12, 1, 12, 5, 5, 1, 6, 14, 12, 14, 14]
objectList.get(j)%2 = 0
Deleting 0
List : [12, 16, 0, 13, 17, 5, 12, 1, 12, 1, 12, 5, 5, 1, 6, 14, 12, 14, 14]
objectList.get(j)%2 = 0
Deleting 16
List : [12, 0, 13, 17, 5, 12, 1, 12, 1, 12, 5, 5, 1, 6, 14, 12, 14, 14]
objectList.get(j)%2 = 1
objectList.get(j)%2 = 1
objectList.get(j)%2 = 1
objectList.get(j)%2 = 0
Deleting 12
List : [0, 13, 17, 5, 12, 1, 12, 1, 12, 5, 5, 1, 6, 14, 12, 14, 14]
objectList.get(j)%2 = 0
Deleting 12
List : [0, 13, 17, 5, 1, 12, 1, 12, 5, 5, 1, 6, 14, 12, 14, 14]
objectList.get(j)%2 = 0
Deleting 12
List : [0, 13, 17, 5, 1, 1, 12, 5, 5, 1, 6, 14, 12, 14, 14]
objectList.get(j)%2 = 1
objectList.get(j)%2 = 1
objectList.get(j)%2 = 0
Deleting 6
List : [0, 13, 17, 5, 1, 1, 12, 5, 5, 1, 14, 12, 14, 14]
objectList.get(j)%2 = 0
Deleting 12
List : [0, 13, 17, 5, 1, 1, 5, 5, 1, 14, 12, 14, 14]
objectList.get(j)%2 = 0
Deleting 14
List : [0, 13, 17, 5, 1, 1, 5, 5, 1, 12, 14, 14]
Final List : [0, 13, 17, 5, 1, 1, 5, 5, 1, 12, 14, 14]