Доброго времени суток!
Задача решена, однако осталось недопонимание (метод doubleValues).
1)
for (int i = 0; i < 10; i++) {
list.add(i+i+1, list.get(i*2));
}
Данный вариант выводит верные решения, но не проходит по условию 3: "Убедись, что метод doubleValues умеет работать со списками любой длины, а не только 10."
При изменении условия i < 10 на i < list.size() выдавало ошибку java.lang.IndexOutOfBoundsException;
Тогда я поменяла строку с list.add:
2) for (int i = 0; i < list.size(); i++) {
list.add(i+1, list.get(i));
}
Стало выдавать ошибку: java.lang.OutOfMemoryError;
При дальнейших попытках нашлись верные решения:
2)for (int i = 0; i < list.size(); i=i+2) {
list.add(i+1, list.get(i));
}
3) for (int i = 0; i < list.size(); i++) {
list.add(i+1, list.get(i));
i++;
}
Так и не поняла, почему два нижних решения не выдают верхние ошибки. Прошу пояснить или поделиться ссылкой на статью.
Заранее спасибо!