所以我有一个程序,每次用户输入他的成绩和其他数据时,它应该正确对齐并根据最高和最低分数。我在下面做了一个示例代码:
String[] names={"girlA","girlB","boyC"};
String[] gradeLevel={"8th grade","10th grade" , "7th grade"};
double[] grades={78.9,23.2,65.7};
System.out.println("Name of Student"+ "\t" + "Grade Level"+ "\t"+ "Grades");
for(int i=0;i<3;i++){
System.out.println(names[i]+"\t"+ gradeLevel[i]+ "\t"+ grades[i]);
}
它应该是这样的:
如何在不使用“\ t”的情况下正确对齐它们,如何根据等级对名称进行排序,从高到低对等级进行排序?
答案 0 :(得分:1)
我不知道问题的范围,但如果可能的话,我会建议创建一个包含这三个字段的对象,例如Student。然后,您可以根据成绩对学生列表进行排序,您将始终知道该对象的名称和级别 关于如果您不想使用tab标签,请正确对齐它们,您可以查看String.format方法,并执行以下操作:
String.format("%1$"+length+ "s", string);
这将返回一个大小为“length”的字符串,其中包含“string”,并使用空格填充其余长度
答案 1 :(得分:0)
您可以使用Comparable Interface或Comparator对对象进行排序。
https://docs.oracle.com/javase/tutorial/collections/interfaces/order.html