Ath*_*ira 6 java arrays sorting merge
是否可以合并两个数组(一维),即string和int并对它们进行排序?例如:
String name[] = {"Percy", "Daniel, "Layla"};
int marks[] = {90, 87, 91};
Arrays.sort (name);
for(int i = 0; i < name.length; i++)
System.out.println( (i+1) + ". "+ name[i] + "\t\t" + marks[i]);
Run Code Online (Sandbox Code Playgroud)
如果我想对它们进行排序,我希望输出如下:
// before sorting
1. Percy 90
2. Daniel 87
3. Layla 91
// after sorting
1. Daniel 90
2. Layla 87
3. Percy 91
// the actual output that i wanted
1. Daniel 87
2. Layla 91
3. Percy 90
Run Code Online (Sandbox Code Playgroud)
你建议我做什么?如何链接这两个数组并根据它们的名称对它们进行排序?或者我该如何合并它们?有什么简单的方法我能理解吗?正如我在网上到处阅读使用比较器,合并和一切,但我不是那么清楚.
我是java的新手.对于初学者有什么方法吗?
这是我作为新手时通常做的事情:
String name[] = {"Percy","Daniel","Layla"};
int marks[] = {90, 87, 91};
String merged[] = new String[name.length];
for (int i=0; i< name.length; i++) {
merged[i] = name[i]+"=="+marks[i];
}
Arrays.sort(merged);
for(int i = 0; i < merged.length; i++) {
System.out.println( (i+1) + ". "+ merged[i].split("==")[0] + "\t\t" + merged[i].split("==")[1]);
}
Run Code Online (Sandbox Code Playgroud)