@Override public K set(final int i, final K k) { synchronized (sync) { return list.set(i, k); } } @Override
@Override public K set(final int index, final K k) { ensureRestrictedIndex(index); return l.set(from + index, k); } @Override
@Override public K set(long index, K k) { return list.set(intIndex(index), k); } @Override
/** * Shuffles the specified list using the specified pseudorandom number * generator. * * @param l * the list to be shuffled. * @param random * a pseudorandom number generator. * @return {@code l}. */ public static <K> ObjectList<K> shuffle(final ObjectList<K> l, final Random random) { for (int i = l.size(); i-- != 0;) { final int p = random.nextInt(i + 1); final K t = l.get(i); l.set(i, l.get(p)); l.set(p, t); } return l; } /**