Java 您好,我有一个编译问题,无论我做什么,我都可以';我无法摆脱这个错误
我目前在drjava工作。下面代码中的所有内容都会编译,但第18行会生成以下错误: 错误:语法错误,请插入“;”以完成LocalVariableDeclarationStatement 有人能帮我修一下吗 代码如下:Java 您好,我有一个编译问题,无论我做什么,我都可以';我无法摆脱这个错误,java,drjava,Java,Drjava,我目前在drjava工作。下面代码中的所有内容都会编译,但第18行会生成以下错误: 错误:语法错误,请插入“;”以完成LocalVariableDeclarationStatement 有人能帮我修一下吗 代码如下: public class ProgramAssignmentPart1 { public static void main (String[] args) { Scanner input = new Scanner(System.in); Strin
public class ProgramAssignmentPart1 {
public static void main (String[] args) {
Scanner input = new Scanner(System.in);
String[]Students = new String[10];
int[]Scores = new int[10];
maxgrade = -99;
mingrade = 200;
int totalSum = 0;
maxindex =11 ;
minindex = 0 ;
//double(100-score)/100(this is used somewhere)
for(int i=0;i<10;i++){
students[i] =input.next();
scores[i] = input.nextInt();
// and this needs to be pieced together below
int currentS(i) = 0;
if(currentS > maxgrade){
maxgrade=currentS; maxgrade=i;
if(scores[i] > maxgrade){
maxgrade = score[i]; maxindex=i;
}//reset max grades
}
if(currentS<minGrade){
mingrade = currentS;
minindex=i;
if(scores[i]<mingrade){
mingrade=scores[i];
minindex=i;
}
totalsum+=currentS;
}//loop
System.out.println("Max.Grade"+Scores[maxindex]+"C"+Students[maxindex]+")");
System.out.rintln("Min.Grade="+Scores[minindex]+("+Students[minindex]+")");
}
}
}
公共类程序分配第1部分{
公共静态void main(字符串[]args){
扫描仪输入=新扫描仪(System.in);
字符串[]学生=新字符串[10];
int[]分数=新的int[10];
maxgrade=-99;
mingrade=200;
整数总和=0;
maxindex=11;
minindex=0;
//双倍(100分)/100分(在某处使用)
对于(int i=0;i maxgrade){
maxgrade=电流;maxgrade=i;
如果(分数[i]>maxgrade){
maxgrade=分数[i];maxindex=i;
}//重置最大坡度
}
如果(currentS我想当你说int current(i)=0;
你的意思是做一个整数,它是i的值。它应该是int current=i;
现在,以下代码有一些错误的引用:
System.out.rintln("Min.Grade="+Scores[minindex]+("+Students[minindex]+")");
应该是
System.out.rintln("Min.Grade=" + Scores[minindex]+ "(" + Students[minindex] + ")");
还要确保在编写变量时拼写正确(它们是K敏感的),请小心。这里有很多编译器错误,但是您得到的编译器消息没有帮助。让我们从顶部开始:尝试使用javac
编译它,您应该会得到更多有意义的编译错误
我不会逐一介绍,因为它们太多了,但这里有一些亮点:
- 所有声明的变量都必须指定一个类型
- 变量命名区分大小写;
var1
不同于var1
,后者不同于var1
- 函数名的拼写很重要,否则Java会告诉您它“找不到符号”
哪一行是18?还要注意,正确缩进代码(我相信DrJava会帮你做到这一点)会让你更容易发现这种错误。int currentS(I)=0;
看起来是错误的,System.out.rintln(“Min.Grade=“+Scores[minindex]+(“+Students[minindex]+”);
有两个原因是错误的,但是有太多的代码丢失了,以至于100%的代码都被修复了这就是你正在使用的实际代码?这里有太多的编译错误。Java是区分大小写的,所以你不能使用分数然后再使用分数。正确使用空格是你应该尽早学习的东西。人类倾向于阅读用空格分隔的单词表示的东西,编译器支持用空格分隔关键元素,所以为什么要编写代码,使我们有int[]分数
,它将类型与名称混合。int[]分数
更为美好,因为它首先显示类型,然后是名称。