Как навесить обработчик событий java
Всем привет. Суть программы в том чтобы найти максимальное число в одномерном массиве среди чисел делящихся на 3 и номер максимального числа. Такая проблема - нужно навесить обработчик событий на два случая - ввод рядка вместо числа, элементы кратны 3 отсутствуют. Попытался реализовать, но результат не тот.
import java.util.InputMismatchException;
import java.util.Scanner;
import java.util.Arrays;
public class MainWithoutMethods {
public static void main(String[] args) {
Scanner scn = new Scanner(System.in);
System.out.println("Размер массива");
int size = 0;
try {
size = scn.nextInt(); //ввод размера массива
} catch (NumberFormatException numberFormatException) {
throw new NumberFormatException("Ввод только чисел");
}
int[] array = new int[size];
try {
System.out.println("Элементы массива:");
for (int i = 0; i < size; i++) {
array[i] = scn.nextInt(); //ввод элементов массива
}
} catch (InputMismatchException inputMismatchException) {
throw new InputMismatchException("Ввод только чисел");
}
int max = 0;
int idx = 0;
for (int i = 0; i < size; i++) {
if (array[i] % 3 == 0 && max < array[i]) { //поиск максимального числа кратного 3м
max = array[i];
idx++;
}
}
}
}