我正在为大学工作,我正在努力弄清楚为什么这条线路无法正常工作
return Full_Name.compareTo(Age, Student_ID, Comm_Marks, Work_Exp_Marks,Mathematics_Marks);
我已经尝试过搞乱它,快速谷歌搜索错误修复但没有出现(好吧......至少对我来说)
我需要做的是按字母顺序组织数组,然后其他数组值遵循最初旁边的值。因此,例如,当Full_Name数组按字母顺序排序并且Bruce Wayne按此排序时,则“RP0023”的Student_ID必须跟随Bruce Wayne以及Age数组和主题标记...如果这是有意义的,之后有更多的步骤,但这是需要完成的任务中最难的部分。我一直在努力解决这个问题一个星期了。讲师建议使用Compare To功能进行排序,这就是我一直在尝试做的事情。
我真的希望尽快完成这种排序,这样我就可以继续完成任务,因为我不能继续进行排序。希望我涵盖了我需要的所有内容并且有意义。此外,我正在编写代码并确保它在控制台中以可读方式打印之前有效。
package javaapplicationtest;
import java.util.Arrays;
import java.util.Comparator;
public class JavaApplicationTest
{
public static void main(String[] args)
{
Integer[] proxyLookup = new Integer[]{0, 1, 2, 3, 4, 5, 6, 7};
String[][] Full_Name
= {
{"Bruce Wayne", "Dinah Lance", "Celina Kyle", "Clark Kent"},
{"Barry Allen", "Barbara Gordon", "Hal Jordon", "Ray Palmer"}
};
int[][] Age = {
{18, 19, 23, 34},
{19, 16, 24, 37}
};
String[][] Student_ID
= {
{ "RP0023", "RP0024", "RP0025", "RP0026"},
{"RP0027", "RP0028", "RP0029", "RP0030"}
};
Double[][] Comm_Marks
= {
{87.4, 67.8, 45.3, 14.5} ,
{76.8, 54.2, 56.3, 98.2}
};
Double[][] Work_Exp_Marks
= {
{67.5, 72.6, 97.5, 76.2} ,
{83.0, 45.5, 37.1, 87.4}
};
Double[][] Mathematics_Marks
= {
{92.4, 54.3, 56.3, 67.3} ,
{23.4, 67.4, 84.4, 90.0}
};
System.out.println("Unsorted Array: \n ==============");
for (int index : proxyLookup)
{
System.out.println(Full_Name[index] + ";" + Age[index] + ";" + Student_ID[index]);
}
Arrays.sort(proxyLookup, new Comparator<Integer>() {
@Override
public int compare(Integer o1, Integer o2) {
return Full_Name.compareTo(Age, Student_ID, Comm_Marks, Work_Exp_Marks,Mathematics_Marks);
}
});
System.out.println("Sorted Aray: \n ==============");
for (int index : proxyLookup) {
System.out.println(Full_Name[index] + "; " + Age[index] + "; " + Student_ID[index]);
}
}
}