我有一个带有测验和活动的应用程序,我希望获得前 5 名得分的玩家。我有 2 个 ArrayList,其中一个存储分数,另一个存储玩家的姓名。我设法用分数列出了清单,但我不知道如何在同行分数旁边列出正确的名字。
我所拥有的图像:https ://i.stack.imgur.com/7PxmR.png
以及我正在寻找的图像:https://i.stack.imgur.com/HNEsU.png
我尝试过使用 Map,但我不知道不能存储 2 个相同的键,所以这是不可能的,但可能有一种方法可以拥有某种带有索引的数组列表,但可以有 2 个不同的信息,我不知道知道。
我的 2 个 ArrayList :
public static ArrayList<Integer> scoresList = new ArrayList<>(); public static ArrayList<String> namesList = new ArrayList<>();
我获得 5 个最佳成绩的方法:
public class HistoryActivity extends AppCompatActivity {
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_history);
TextView first = (TextView) findViewById(R.id.history_activity_first);
TextView second = (TextView) findViewById(R.id.history_activity_second);
TextView third = (TextView) findViewById(R.id.history_activity_third);
TextView fourth = (TextView) findViewById(R.id.history_activity_fourth);
TextView fifth = (TextView) findViewById(R.id.history_activity_fifth);
Collections.sort(scoresList, Collections.reverseOrder());
first.setText("Best score is : " + scoresList.get(0));
if (scoresList.size() >= 2) {
second.setText("2nd best score is : " + scoresList.get(1));
}
if (scoresList.size() >= 3) {
third.setText("3rd best score is : " + scoresList.get(2));
}
if (scoresList.size() >= 4) {
fourth.setText("4th best score is : " + scoresList.get(3));
}
if (scoresList.size() >= 5) {
fifth.setText("5th best score is : " + scoresList.get(4));
}
}
}
凤凰求蛊
相关分类