Откуда вдруг такой вывод?
Пробегается цикл 8 раз по массиву индекс, по его содержимому выбирается значение из массива острова.
То есть
y = 0 -> index[0] = 1 -> islands[1] = "Фиджи"
y = 1 -> index[1] = 3 -> islands[3] = "Косумель"
и так далее.
Кстати, код просто ужасный. Лучше как-то так его оформить
public class TestArrays {
public static void main(String[] args) {
String[] islands = new String[]{
"Бермуды",
"Фиджи",
"Азорские острова",
"Косумель",
"Четыре",
"Пять",
"Шесть",
"Семь"
};
int[] index = new int[]{
1, 3, 0, 2, 5, 7, 4, 6
};
for (int i = 0; i < index.length; i++) {
int ref = index[i];
System.out.println("острова = " + islands[ref]);
}
}
}