arraylist をループして、3 つのインデックスごとに要素を徐々に削除しようとしています。配列リストの最後に到達したら、インデックスを最初にリセットしてから、配列リストを再度ループし、配列リストに要素が 1 つだけ残るまで、3 つのインデックスごとに要素を削除します。
listOfWords は、以前に入力された長さ 3 の配列です。
int listIndex = 0;
do
{
// just to display contents of arraylist
System.out.println(listOfPlayers);
for(int wordIndex = 0; wordIndex < listOfWords.length; wordIndex++
{
System.out.print("Player");
System.out.print(listOfPlayers.get(wordIndex));
System.out.println("");
listIndex = wordIndex;
}
listOfPlayers.remove(listOfPlayers.get(listIndex));
}
while(listOfPlayers.size() > 1);
数時間実装しようとしましたが、まだ問題があります。arraylist の要素は次のようになります。
1, 2, 3, 4
1, 2, 4
1, 2
次に、3 番目の要素 (存在しなくなった) をチェックするときに、「範囲外のインデックス エラー」例外をスローします。最後の要素に到達したら、最初の要素にラップアラウンドし、配列を続行します。また、配列リストから要素を削除したら、最初からではなく、中断したところから開始したいと考えています。