Нужна помощь в перехвате исключения ArrayIndexOutOfBoundsException для каждого цикла (Java)JAVA

Программисты JAVA общаются здесь
Ответить
Anonymous
 Нужна помощь в перехвате исключения ArrayIndexOutOfBoundsException для каждого цикла (Java)

Сообщение Anonymous »

HW3.java
импортировать java.util.Scanner;

публичный класс HW3 {

//Метод устанавливает сканер для ввода часа public static int Scanner() { Сканер x = новый сканер(System.in); int pay = x.nextInt(); возврат заработной платы; } public static void main(String args[]) { //Запрашивает ввод часов, ввод часов в переменную System.out.println("Ввод часов"); int час = Сканер(); //Создание массива сотрудников с именами и категориями заработной платы Сотрудник [] сотрудник = новый сотрудник[4]; сотрудник [0] = новый сотрудник («Синдзи Икари», 15.50); сотрудник [1] ​​= новый сотрудник («Рей Аянами», 21.35); сотрудник [2] = новый сотрудник («Аска Лэнгли Сорю», 2.12); сотрудник [3] = новый сотрудник («Каору Нагиса», 20.01); //Для цикла выполнения метода showText из файла Работника.java для каждого сотрудника в массиве пытаться { для (Сотрудник e: сотрудник) е.showText(час); } catch(ArrayIndexOutOfBoundsException oob) { System.out.println("НЕТ"); } }
Сотрудник.java
Сотрудник публичного класса {

//Устанавливает частные переменные, определяющие «Сотрудник» частное имя строки; частная двойная заработная плата; частная двойная общая оплата; //Конструкторы сотрудников для имени и заработной платы public Сотрудник (String имя сотрудника, двойная почасовая оплата) { имя = имя сотрудника; заработная плата = почасовая оплата; } //Возвращает значение имени публичная строка getName() { вернуть имя; } //Устанавливает имя обновления ASnd public void setName(String ename) { имя = имя; } //Возвращает значение заработной платы общественный двойной getWage() { возврат заработной платы; } //Устанавливает и обновляет заработную плату public void setWage(двойная почасовая оплата) { заработная плата = почасовая оплата; } //Метод, который вычитает налог в размере 30% из базовой почасовой оплаты общественный двойной getTotalPay() { общая оплата = заработная плата - (зарплата*0,3); возврат общей суммы оплаты; } //Метод берет имя, заработную плату и общую сумму заработной платы из файла Employer.java вместе с часом из HW3.java, чтобы поместить их в печатный отчет. public void showText(int отработано часов) { попробуйте {System.out.printf("Сотрудник " +name+ ", который зарабатывает $%.2f в час, отработал " +hoursworked+ " часов на прошлой неделе и забрал домой $%.2f после уплаты налогов.\n", заработная плата, getTotalPay()*отработано часов); } catch(ArrayIndexOutOfBoundsException oob) { System.out.println("Ошибка"); } }

В этой программе еженедельного расчета зарплаты мне нужно перехватить возможное исключение ArrayIndexOutOfBoundsException при извлечении сотрудника из моего массива сотрудников. Я понятия не имею, как проверить правильность моего текущего размещения программы исключений, потому что я не знаю, как отформатировать каждый цикл, чтобы попытаться выйти за пределы четырех сотрудников, которые у меня сейчас есть в моем основном методе. Правильно ли помещена в цикл моя текущая программа исключений или мне нужно поместить ее в другое место?
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «JAVA»