初学java 报错

2025-03-03 07:53:28
推荐回答(5个)
回答1:

第一个错误:main方法里有句Scanner keyboard = new Scanner(System.in);choice = menu(keyboard);

其中的keyboard是什么类型的?是Scanner类型的....那你怎么在下面的menu方法里把参数写成public static int menu(int keyboard)?要注意看参数类型........改成public static int menu(Scanner keyboard)

第二个错误: "if (keyboard.hasNextInt == true){ " ,错误在于hasNextInt 是Scanner类里的一个方法名,返回值的是boolean型;
要改成 "if (keyboard.hasNextInt() == true){ ",加个括号!!!!!

回答2:

那就修改menu()就行了
改成传入参数是一个Scannner:
public static int menu(Scanner keyboard)

回答3:

第一个错choice = menu(keyboard); 把method 2
原先:public static int menu(int keyboard){
改成:public static int menu(Scanner keyboard){

第二个错if (keyboard.hasNextInt == true){
改成:if (keyboard.hasNextInt()){

初学要经常看API

回答4:

第一个错choice = menu(keyboard); 把第2个方法名后参数类型更改。
原先:public static int menu(int keyboard){}
改成:public static int menu(Scanner keyboard){}
第二个错误: "if (keyboard.hasNextInt == true){ " ,错误在于hasNextInt 是Scanner类里的一个方法名,返回值的是boolean型;
要改成 "if (keyboard.hasNextInt() == true){ ",加个括号!!!!!

回答5:

第一个错choice = menu(keyboard); 把第2个方法名后参数类型更改。
原先:public static int menu(int keyboard){}
改成:public static int menu(Scanner keyboard){}
第二个中if (keyboard.hasNextInt == true){}
改成:if (keyboard.hasNextInt()==true){}这是keyboard句柄后接hasNextInt方法,方法名后要加上()。