0
ArrayList<Score> scores = new ArrayList<Score>();


public void addScore( String name, int value){
    Score temp  = new Score();
    temp.playerName = name;
    temp.value = value;
    scores.add(temp);
    Collections.sort(scores, new Comparator<Score>() {
        public int compare(Score o1, Score o2) {
            return (o1.value - o2.value);
        }
    });

public ArrayList<Score> getTopScores(int number){
    ArrayList<Score> topScores = new ArrayList<Score>();
    try{
        for (int i = 0; i<=number;i++){
            topScores.add(scores[i]);
            return topScores;
        }

したがって、基本的には、スコア ArrayList からスコア (数値) を取得する配列を返そうとしています。

4

1 に答える 1

1

配列に適した方法で ArrayList 要素にアクセスしようとしています。

もちろん、これは決してうまくいきません。

使用するscores.get(i)

要素の範囲を単純に取得したい場合は、手動で分割せずに Java List API でsubList(int fromIndex,int toIndex)Listメソッドを使用します。

于 2013-09-11T02:45:51.657 に答える