import java.util.ArrayList; import java.util.Arrays; public class ArrayListExercise { /** * @param args */ public static void main(String[] args) { ArrayList a = new ArrayList(); a.add("one"); a.add("two"); a.add("three"); a.add("four"); System.out.println("Before: " + Arrays.toString(a.toArray())); expand(a); System.out.println("After: " + Arrays.toString(a.toArray())); } /** * inserts the element at index i i times after that element * @param list the ArrayList to expand */ public static void expand(ArrayList list) { int count = 0; for (int i = 0; i < list.size(); i += count) { Object element = list.get(i); for (int k = 1; k <= count; k++) { list.add(i, element); } count ++; } } }