Java初心者はこちら。 ArrayListからResultオブジェクトをArrayに追加しようとしています(後でソートされます)。私はArrayListがおそらくもっとうまくいくだろうと知っていますが、この割り当てで少なくとも1つの配列を使う必要があります。配列に同じ要素が含まれているのはなぜですか?
私のコードでは、クラスEventのインスタンスである配列のコピーを作成しました。これを反復処理し、異なるParticipantオブジェクトから最良の結果を追加しようとしています。これを実行すると、最も最近追加された参加者の最良の結果が配列に追加されます(すべてのインデックスの同じオブジェクト)。リスト内のすべてのオブジェクトの結果を追加するにはどうすればよいですか?
public void createBestResultArray(Event e) {
resultArray = Arrays.copyOf(resultArray,e.getParticipantAmount());
for(Participant p1 : participantsInEvent){
for (int i = 0; i < resultArray.length ; i++){
resultArray[i] = p1.getBestResult(e);
}
}
System.out.print(Arrays.toString(resultArray));
}
'Event'クラスのコードを貼り付けることができるかどうかを分析する方が簡単です。 'participantsInEvent'変数は何ですか?最後に追加された参加者の最良の結果_参加者が配列に追加されました。つまり、配列全体にただ1つの要素が含まれていますか? –
@Nathalie私の答えはあなたの問題を解決しましたか?そうでない場合は、さらに明確にするためにコメントを残してください。また、[誰かが私の質問に答えるとどうすればいいですか?](http://stackoverflow.com/help/someone-answers)も読んでください。 * Stack Overflow *でこれを行うのは良いエチケットと考えられます。 – CKing
@CKingあなたの答えをありがとう!私の問題は解決されました。情報をいただきありがとうございます。私はStack Overflowを初めて使っていますので、ここでどのように動作するのかまだ分かりません。 – Nathalie