我正在製作一個拼字遊戲應用程序,我想製作一個系統,玩家可以在其中查看他們的分數以及名字。分數應該從最高到最低排列。輸出應該是這樣的: 名稱分數按Android遊戲分數排序玩家名稱
Kathy 150
Charm 140
Albert 130
Arvin 120
Angelo 110
我試圖做到這一點使用數組,我有一個很難使這項工作。
int score[]= new int[4];
score[0]= 120;
score[1]= 130;
score[2]= 140;
score[3]= 150;
String names[] = new String[4];
names[0]= "albert";
names[1]= "arvin";
names[2]= "charm";
names[3]= "kathy";
Player[] players = new Player[names.length];
for(int i = 0; i < names.length; i++) {
players[i] = new Player(names[i], score[i]);
show.setText((CharSequence) players[i]);
}
Arrays.sort(players, new PlayerComparator());
class PlayerComparator implements Comparator<Player> {
public int compare(Player p1, Player p2) {
return p1.getScore() < p2.getScore() ? -1
: p1.getScore() > p2.getScore() ? 1 : 0;
}
}
public class Player {
private String name;
private int score;
public Player(String name, int score) {
this.name = name;
this.score = score;
}
public String getName() {
return name;
}
public int getScore() {
return score;
}
public String toString() {
return "name=" + name + "; score=" + score;
}
}
任何人都可以請幫我在使用什麼引導我實現這一目標?非常感謝你提前。
你的代碼在哪裏?有什麼結構來保存這些數據? – Rawkode 2013-03-11 14:13:58
請發佈您已有的代碼。 – 2013-03-11 14:14:22
使用'objects','ArrayList','Comparable'並覆蓋'compareTo'。問題解決了。嘗試使用這些代碼,如果卡住了任何地方,請回到這裏。 – SudoRahul 2013-03-11 14:14:35