Только не бросайте исключение, тогда:
int arr[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10};
for (int i = 0; i < arr.length; i++) {
if (i % 2 == 0) {
System.out.println("i = " + i);
}
}
Или бросить его и поймать его внутри цикла, а не снаружи (но я не вижу смысла в выдаче исключения в этом тривиальном примере):
int arr[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10};
for (int i = 0; i < arr.length; i++) {
try {
if (i % 2 == 0) {
System.out.println("i = " + i);
throw new Exception();
}
}
catch (Exception e) {
System.err.println("An exception was thrown");
}
}
Примечание: посмотрите, как гораздо легче читать код, если он правильно написан с отступом и содержит пробелы вокруг операторов.