使用Object类型参数作为方法参数?

时间:2018-05-15 20:20:21

标签: java methods arguments

以下显示必须从学生对象打印平均成绩的Main方法。它在方法调用中具有类型Student和SID,因此它可以打印出三个等级的简单数组的平均等级。学生类型的参数是什么?

public static void main(String[] args){
    add("101", "Jacob", "Elderinsky", "J.Elder@gmail.com",25, 89, 99.0, 65.0);
    add("201", "Trever", "Riley-Thomas", "stay umble@class.com", 32, 66.0, 84.0, 96.0);
    add("301", "Alexis", "Salkolnikov", "allsalk@outlook.com", 15, 99.0, 100.0, 100.0);
    add("401", "Regina", "Washington", "talktothis@wgu.edu", 19, 92, 96, 92);
    add("501", "Ryan", "Raskolnikov", "agawro1@my.wgu.edu", 28, 99.0, 100.0, 94.0);

    print_all();
    print_invalid_emails();
    printAverageGrade();// <-------------- Parameter???
    remove("3");
    remove("3");

当我尝试使用String或整数输入时,编译器告诉我SID(学生ID)无效。

public static void printAverageGrade(Student SID) {
    double[] grades = SID.getGrades();
    System.out.println(SID.getSID() + "\t" + (grades[0] + grades[1] + grades[2]) / 3.0);

}

1 个答案:

答案 0 :(得分:0)

printAverageGrade(Student SID)

此方法仅根据定义接受Student对象 - 这就是您无法将String或Integer传递给此方法的原因。