Я попробовал это и не смог найти ничего плохого. Чтобы упростить отладку, я рекомендую вам заполнить ваш массив случайными числами.
Создайте экземпляр Random
Random rand = new Random();
и назначьте вывод переменной массива.
arr = rand.ints(10,1,15).toArray();
Аргументами rand.ints
являются.
- 10 - количество элементов
- 1 - начало диапазона чисел
- 15 - конец диапазона (не включая этот номер)
Таким образом, при вызове будет сгенерировано 10 номеров от 1 до 14 включительно.
Одной из возможных проблем может быть дублирование номеров в ваш массив и найти правильный, чтобы поменять. Но я не смог воспроизвести ошибку.