我是Java新手,我正在尝试完成一个程序,使用扫描仪输入学生的姓名,标记,然后计算每个学生的成绩。我被卡住,因为我在打印时一直低于错误。任何帮助将不胜感激!
Syntax error, insert "SimpleName" to complete
QualifiedName
- Syntax error on token ".", @ expected after this token
- Syntax error, insert "Identifier (" to complete
MethodHeaderName
- Syntax error, insert ")" to complete MethodDeclaration
错误出现在打印陈述
中package day2.examples; import java.util.Scanner;
public class inputData {
/*String stdName;
int mathMarks;
int engMark;`enter code here`
int sciMark;*/
Scanner input = new Scanner(System.in);
String stdName = input.nextLine();
int mathMark = input.nextInt();
int engMark = input.nextInt();
System.out.println("Insert Name Value");
int grade () {
if ((mathMark + engMark ) <50) {
return(1);
} else return(2);
}
}
答案 0 :(得分:4)
你的代码属于在类中裸露出来的方法或构造函数。也许您想要创建一个main方法并将代码放在那里。
import java.util.Scanner;
public class InputData {
public static void main(String[] args) {
/*String stdName;
int mathMarks;
int engMark;`enter code here`
int sciMark;*/
Scanner input = new Scanner(System.in);
String stdName = input.nextLine();
int mathMark = input.nextInt();
int engMark = input.nextInt();
System.out.println("Insert Name Value");
}
public static int grade () {
if ((mathMark + engMark ) < 50) {
return 1;
} else {
return 2;
}
}
}
答案 1 :(得分:1)
您需要将代码放在某个方法,构造函数或块中。
您可以执行以下操作
class InputData {
int engMark;
int mathMark;
Scanner input = new Scanner(System.in);
public void getInput(){
System.out.println("Insert Name Value");
String stdName = input.nextLine();
mathMark = input.nextInt();
engMark = input.nextInt();
}
int grade() {
if ((mathMark + engMark) < 50) {
return (1);
} else
return (2);
}
public static void main(String args[]){
InputData inputData = new InputData();
inputData.getInput();
System.out.println(inputData.grade());
}
}
还要注意java命名约定。让生活更轻松。类名应该是InputData
而不是inputData
。
答案 2 :(得分:1)
如果您希望它运行,您需要将所有代码放入main method
。声明一个main方法如下:
class InputData {
public static void main(String[] args) {
// Put all of your code here
}
}
主方法之外的任何东西都不会运行,这就是Java如何工作的方式。
此外,关于Java命名约定,类名(程序顶部的class
之后的事物)的说法应始终大写,变量名应始终以小写字母开头。
答案 3 :(得分:1)
您需要添加import语句以及添加public static void main(String args [])方法。主要方法是任何java程序的起点。尝试编译它。
import java.util.Scanner;
public class InputData {
private static String stdName;
private static in mathMark;
private static int engMark;
public static void main(String args[]){
Scanner input = new Scanner(System.in);
stdName = input.nextLine();
mathMark = input.nextInt();
engMark = input.nextInt();
System.out.println("Insert Name Value");
}
private static int grade () {
if ((mathMark + engMark ) <50) {
return 1;
} else return 2;
}
}