Ваш первый цикл while
пока выполняется только одна итерация, поскольку он всегда встречает ключевое слово return
.return
выведет вас из цикла while
и вашего getWeekPay()
.
Вам просто нужно вернуть переменную empWeeklyPay
в конце вашего метода, поэтому здесь полезен только последний возврат.Конец вашего метода должен выглядеть следующим образом:
if(RegHours > 34) {
empBasePay -= (empBasePay * .06);
empWeeklyPay = empBasePay;
} else {
empWeeklyPay = empBasePay;
}
return empWeeklyPay;
РЕДАКТИРОВАТЬ
Почему вы всегда получаете 0:
double empBasePay = (RegHours * empHourlyRate) + (otHours * empHourlyRate * 1.5);
Как RegHours
и otHours
равны 0, вы также можете написать:
double empBasePay = 0;
А так как остальная часть метода основана на базовом значении empBasePay
, которое равно 0, ваш метод всегда будетвозврат 0.