0

我的问题是我们可以在这种热情中声明数组吗

int college[][][];

它包含 3 个块 Departments、Students、Marks

我需要一个部门的 5 名学生和另一个部门的 6 名学生

我们可以这样声明数组吗?如果有怎么办?

4

3 回答 3

1
int college[][][] = new int[3];
college[0] = new int[5];
college[1] = new int[6];
...
college[0][0] = new int[count_marks_dept1_student1];
于 2013-08-28T13:19:39.460 回答
0

您可以这样做,但您应该问问自己是否不应该改用面向对象的编程技术。

例如:

int departments = 5; // 5 departments
int[][][] college = new int[departments][][];

int students = 20; // 20 students in first department
college[0] = new int[students][];

int marks = 10; // 10 marks for first student in first department
college[0][0] = new int[marks];
college[0][0][0] = 3; // first mark for first student in first department

students = 17; // 17 students in second
college[1] = new int[students][];

// and so on...
于 2013-08-28T13:20:30.380 回答
0

如果您真的想将其存储在 3D 数组中,您可以对 2 个部门执行以下操作:

int college[][][] = new int[] {new int[5], new int[6]}

Department但在和的单独类中处理此问题将是一种更好的方法Student。为什么需要在数组中处理这个有特殊要求吗?

于 2013-08-28T13:21:07.930 回答