java中的公共双getGPA()方法

java中的公共双getGPA()方法,java,class,Java,Class,错误是: public Student getBestStudent( ) { int best = 0; for ( int index = 0; index < students.length; index++ ) if ( students[best].getGPA() < students[index].getGPA() ) best = index; return students[best];} public float getGPA (

错误是:

    public Student getBestStudent( ) {
int best = 0;

for ( int index = 0; index < students.length; index++ ) 
   if ( students[best].getGPA() < students[index].getGPA() )
      best = index;

return students[best];}
public float getGPA ( String name ){
boolean found = false;
int index = 0;
float result;
while ( !found && index < students.length ) {
  if ( students[index].getName().equals( name ) ){
    found = true;
break;}
  index++;}
if ( found ) 
 result = students[index].getGPA();
else
 result = -1f;

return result;}

}

如何修复它?

这意味着您的getGPA方法不是学生[index]的方法。 查看students[index]对象是什么类,并查看它是否
具有getGPA方法。并尝试正确格式化代码。

getGPA方法需要字符串类型的参数。在if语句中,直接调用getGPA方法,不带任何参数


您要么需要一个没有参数的getGPA方法,要么更改if语句以传递所需的参数。

这不是一个好问题。StackOverflow不仅仅是为了发布你的坏代码。你必须展示对问题的理解,描述解决问题的尝试,并提出一个实际问题我很抱歉我是这个网站的新用户,没关系。我们都必须从某个地方开始。至少看起来你得到了一些合理的答案。如果有机会,请查看帮助文档。它们其实很好,我以后会考虑的。
error cannot find symbol line -> result = students[index].getGPA();
error cannot find symbol line -> if ( students[best].getGPA() < students[index].getGPA() )