我对编码还很陌生,无法解决我的问题,因此我发布了直接代码。
该程序的目标是在构造函数中产生100个随机成绩,但构造函数的参数为输入的学生成绩编号。
该类和客户端可以编译并正常运行,但是当我尝试在客户端中输出垃圾数据时,我正在接收垃圾数据值。
根据请求,我也不能使用任何Java内置类( Arrays )。我一直在搞砸,似乎无法弄清楚我在做什么错,所以谢谢您的帮助。
import java.util.Random;
public class StudentGrades
{
private int grades[];
//overloaded constructor
public StudentGrades(int students)
{
Random rand = new Random();
grades = new int[students];
for ( int i = 0; i < students; i++ )
{
grades[i] = rand.nextInt(100)+1;
}
}
//accessor
public int []getGrades()
{
int [] temp = new int [grades.length];
for ( int i = 0; i < grades.length; i ++ )
{
temp[i] = grades[i];
}
return temp;
}
}
客户端内部的代码
public class StudentGradesClient
{
public static void main(String [] args)
{
StudentGrades s1 = new StudentGrades(8);
System.out.println( "Grades in s1: " + s1.getGrades());
}
}
这是我运行它时显示的内容:
Grades in s1: [I@6d06d69c