【发布时间】:2021-02-12 10:08:58
【问题描述】:
我正在尝试制作一个学生成绩计划,其中有 2 个数组:String[] Student 和 double[] Grade。
我将它们克隆为一个已排序的数组和一个未排序的数组。
数组:
public class Testcode {
public static void main(String[] args) {
String ArrN[] = {"Garcia", "Magsilang", "Magbag"};
double ArrG[] = {2.5, 1.25, 1.5};
String ArrN2[] = ArrN.clone();
double ArrG2[] = ArrG.clone();
Arrays.sort(ArrN2);
Arrays.sort(ArrG2);
System.out.println(Arrays.toString(ArrN1));
System.out.println(Arrays.toString(ArrN2));
System.out.println(Arrays.toString(ArrG2));
System.out.println(Arrays.toString(ArrG2));
}
}
现在,我如何制作如下图所示的输出(按等级排序)
- 1.25 Magsilang
- 1.5 Magbag
- 2.5 Garcia
或(学生排序)
- Garcia 2.5
- Magbag 1.5
- Magsilang 1.25
【问题讨论】:
-
为什么不创建一个
StudentGrade类来将姓名和成绩放在一个地方 -
我实际上已经创建了一个类来容纳数组,但我的问题是这样的让我们说 Array1 = "SA","SB",SC" //StudentName Array2 = 1.0,3.0,5.0 / /学生成绩输出应按最高成绩排序,同时在数组的同一索引上显示对应名称 1.0 = SA 3.0 = SC 5.0 = SB
-
维护两个独立数组之间的顺序真的很烦人。您最好的选择是创建一个专门的类来存储这两个东西(单个学生的姓名和成绩)并拥有这些对象的数组。然后,您可以根据需要按名称或等级对其进行排序,并始终获取其他相关数据。
-
然后创建一个studentgrade.class然后将它继承到main.class会解决问题吗?如果是这样,那么是否有我可以依据的代码?