如何解决如何在具有相同数据类型的不同对象中比较两个变量?
import java.util.Scanner;
public class test{
public static void main(String[]args){
Scanner input=new Scanner(System.in);
SE220Std [] stdDB=new SE220Std[2];
for(int i=0;i<stdDB.length;i++){
System.out.println("enter student's "+(i+1)+" name,id and gpa respectivly");
String n=input.next();
int d=input.nextInt();
double g=input.nextDouble();
stdDB[i]=new SE220Std (n,d,g);
}
for(int i=0;i<stdDB.length;i++){
System.out.println("student "+(i+1)+" info:- \n"+stdDB[i].getName()+"\n"+stdDB[i].getID()+"\n"+stdDB[i].getGPA());
System.out.println("-----------------");
}
for(int i=0;i<stdDB.length;i++){
if(stdDB[0].getGPA()<stdDB[i].getGPA()){
stdDB[0].getGPA()=stdDB[i].getGPA();
}
System.out.println(stdDB[0]);
}
}
}
class SEstd{
private String name;
private int id;
private double gpa;
SEstd () {
name=null;
id=0;
gpa=0;
}
public SEstd(String newName,int newID,double newGPA){
name=newName;
id=newID;
gpa=newGPA;
}
public String getName() {
return name;
}
public void setName(String newName) {
this.name = newName;
}
public int getID() {
return id;
}
public void setID(int newID) {
this.id = newID;
}
public double getGPA() {
return gpa;
}
public void setGPA(double newGPA) {
this.gpa = newGPA;
}
}
错误:作业的左侧必须是变量 所以我试图为学生创建一个数据库,将其姓名,身份证号码和gpa保存在一个对象中,然后将每个对象保存在一个数组中。我想添加显示最高GPA的功能,但测试时出现错误,并且我不知道如何更改代码 我怎样才能比较每个学生的上述gpa以节省最高的gpa? 我尝试了多种方式,但似乎没有正确的选择
解决方法
您不能像这样分配给getter的返回值。那就是二传手的目的:
stdDB[0].setGPA(stdDB[i].getGPA());
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。