リストをループ - インデックスが最後に到達したとき、0からスタート

shrads:

私は、リストをループのロジックを理解したいです。私はリストの最後に達すると、私は、インデックスは再び0から開始したいです。リストには、ループ内で実行され、終了が発生しますので、それは無限ループではありません。

私は、%演算子を用いて溶液を見てきましたが、私はそれを理解していません。以下のような代わり%と何か。私はそれが動作する方法を理解したいと思います。

 for(int i = 0; i < n; i++) { 
   if(i == n - 1) { i = 0; }
}
jeprubio:

モジュロ演算は、 %除算した余りです。

2つの正の数であり、n、%所与N配当であり、nは除数であるnだけのユークリッド除算の余りです。

あなたが使用する場合は、リストを持っていると述べ% list.length()、これは()あなたのlist.lengthまで0からの値が得られます。

次のコードを参照してください。

List<String> list = new ArrayList<String>();
list.add("first");
list.add("second");
list.add("third");

for (int i = 0; i < 10; i++) {
    System.out.println("element: " + list.get(i % list.size()));
}

この出力:

element: first
element: second
element: third
element: first
element: second
element: third
element: first
element: second
element: third
element: first

あなたは働いて、それを確認することができ、ここで

おすすめ

転載: http://10.200.1.11:23101/article/api/json?id=400848&siteId=1