私は中間プロジェクトに取り組んでおり、多かれ少なかれ終了しています。私が抱えている唯一の問題は、プログラムを実行すると、従業員の完全な名前を入力するように求められ、コンパイラーがスキャナーに関する例外をスローすることです。入力からScanner
「scanner user_input」に移行しましたが、それでも正しくコンパイルされません。問題が何であるかについてのヒントをいただければ幸いです。
package midterm;
import java.util.Scanner;
public class Midterm {
public static void main(String[] args) {
Scanner user_input = new Scanner(System.in);
System.out.print("If you wish to enter another's employee's inforamtion"
+ " please press 1, else to exit enter 0.");
int choice = user_input.nextInt();
if (choice == 1) {
System.out.print("What is the employee's full name. ");
String empName = user_input.next();
System.out.printf("Please enter the number of hours that the employee has worked. ");
double hoursWorked = user_input.nextDouble();
System.out.printf("Please enter the employee's hourly pay rate. ");
double payRate = user_input.nextDouble();
displayPay(empName, calculatePay(hoursWorked, payRate));
}
else if (choice == 0) {
System.exit(0);
}
}
public static double calculatePay(double hours, double pay) {
double wages = 0;
if (hours <= 40) {
wages = hours * pay;
}
if (hours > 40) {
double regPay = hours * pay;
double overTime = (hours - 40) * pay * 1.5;
wages = regPay + overTime;
}
return wages;
}
public static void displayPay(String name, double empWage) {
System.out.print("-----------------------------------------");
System.out.print("Employee Name: " + name);
System.out.print("Pay Check Amount: $" + empWage);
System.out.print("-----------------------------------------");
}
}