无法理解如何显示Java对象数组 公立大学课程 { 私有字符串; 私人时间; 私用煤焦级; 公共字符串getCourse() { 返回路线ID; } 公共int getCredits() { 返回时间; } 公共字符getGrade() { 返回等级; } 公共无效设置课程(字符串cid) { courseID=cid; } 公共学分(整数小时) { creditHours=小时; } 公共空间设置等级(字符g) { 等级=g; } } 公立班学生 { 私立国际学生; 私立学院课程[]班=新学院课程[5]; 公共int getID() { 返回学生ID; } 公共无效设置studentid(int s) { studentID=s; } 公立大学课程(int x) { 学院课程=班级[x]; 返回路线; } 公共void setObject(学院课程对象,int x) { 类别[x]=obj; } } 导入java.util.Scanner; 公共课输入成绩 { 公共静态void main(字符串[]args) { 弦乐课程; 国际学分; 煤焦品位; 学生[]年级=新生[10]; 扫描仪输入=新扫描仪(System.in); 对于(intx=0;x

无法理解如何显示Java对象数组 公立大学课程 { 私有字符串; 私人时间; 私用煤焦级; 公共字符串getCourse() { 返回路线ID; } 公共int getCredits() { 返回时间; } 公共字符getGrade() { 返回等级; } 公共无效设置课程(字符串cid) { courseID=cid; } 公共学分(整数小时) { creditHours=小时; } 公共空间设置等级(字符g) { 等级=g; } } 公立班学生 { 私立国际学生; 私立学院课程[]班=新学院课程[5]; 公共int getID() { 返回学生ID; } 公共无效设置studentid(int s) { studentID=s; } 公立大学课程(int x) { 学院课程=班级[x]; 返回路线; } 公共void setObject(学院课程对象,int x) { 类别[x]=obj; } } 导入java.util.Scanner; 公共课输入成绩 { 公共静态void main(字符串[]args) { 弦乐课程; 国际学分; 煤焦品位; 学生[]年级=新生[10]; 扫描仪输入=新扫描仪(System.in); 对于(intx=0;x,java,arrays,class,object,Java,Arrays,Class,Object,我打赌“垃圾堆”是数组或它包含的对象的对象引用 对象需要重写toString(),容器需要在内容上循环。您正在指定索引处打印对CollegeCourse对象的引用 您可以为CollegeCourse编写一个toString()方法来打印出您感兴趣的属性,也可以更改现有行: public class CollegeCourse { private String courseID; private int creditHours; private char grade;

我打赌“垃圾堆”是数组或它包含的对象的对象引用


对象需要重写toString(),容器需要在内容上循环。

您正在指定索引处打印对CollegeCourse对象的引用

您可以为CollegeCourse编写一个
toString()
方法来打印出您感兴趣的属性,也可以更改现有行:

public class CollegeCourse
{

   private String courseID;
   private int creditHours;
   private char grade;

   public String getCourse()
   {
      return courseID;
   }

   public int getCredits()
   {
      return creditHours;
   }

   public char getGrade()
   {
      return grade;
   }

   public void setCourse(String cid)
   {
      courseID=cid;
   }

   public void setCredits(int hours)
   {
      creditHours=hours;
   }
   public void setGrade(char g)
   {
      grade=g;
   }
}


public class Student
{

   private int studentID;
   private CollegeCourse[] classes=new CollegeCourse[5];

   public int getID()
   {
      return studentID;
   }
   public void setStudentID(int s)
   {
      studentID=s;
   }

   public CollegeCourse getCourses(int x)
   {
      CollegeCourse course=classes[x];
      return course;
   }

   public void setObject(CollegeCourse obj,int x)
   {
      classes[x]=obj;
   }
}








import java.util.Scanner;

public class InputGrades
{
   public static void main(String[] args)
   {
      String course;
      int credits;
      char grade;
      Student[] grades=new Student[10];
      Scanner input=new Scanner(System.in);

      for (int x=0;x<1;x++)
      {  
         grades[x]=new Student();
         System.out.println("Enter ID for student #"+(x+1));
         grades[x].setStudentID(input.nextInt());
         for(int y=0;y<5;y++)
         {
            CollegeCourse one=new CollegeCourse();

            input.nextLine();

            System.out.println("Enter course ID for class number "+y); 
            one.setCourse(input.nextLine());

            System.out.println("Enter credits for "+y);
            one.setCredits(input.nextInt());

            input.nextLine();
            System.out.println("Enter a grade for "+y);
            one.setGrade(input.nextLine().charAt(0));

            grades[x].setObject(one, y);
         }
      }

      for (int i=0;i<1;i++)
      {
         for (int j=0;j<5;j++)
         {
            System.out.println("Course: "+grades[i].getCourses(j));
           //Cant figure out how to print this
         }
      }
   }
}

“一堆垃圾”不够具体,任何人都无法轻松帮助你。当你打印“课程:+成绩[i].getCourses(j)”时,会打印出什么内容?你可能缺少一个
toString()
或其他,但正如弗克尔所说,我们需要更多的信息。谢谢。是的,我正在打印参考资料,但我不知道如何取消参考。非常感谢!
System.out.println("Course: "+grades[i].getCourses(j).getCourse());