Ответ 1
Использовать метод обмена JDK
Класс JDK Collections содержит метод для этой цели, называемый Collections.swap. Согласно документации API этот метод позволяет "обменивать элементы в указанных позициях в указанном списке".
Я предлагаю это решение, так что вам не нужно удалять элементы из списка, и вам не нужно откатывать свой собственный метод свопинга. Кроме того, похоже, что этот метод существует с момента выпуска 1.4 Java, поэтому он должен работать для большинства современных JDK.