It may Collections.rotate()seem like an acceptable solution, but some require an advanced task ... see sourceCollections.roatate()
public static void rotate(List<?> lst, int dist) {
...............
reverse(sublist1);
reverse(sublist2);
reverse(list);
}
Collections.reverse() opearion, .
, , , , ...
ArrayList<Integer> arrayList = new ArrayList<Integer>();
for (int i = 1; i < 5; i++) {
arrayList.add(Integer.valueOf(i));
}
System.out.println(arrayList.toString());
Integer removedItem = arrayList.remove(0);
arrayList.add(removedItem);
System.out.println(arrayList.toString());