Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
foreachを使用して配列を反復処理する場合、要素が返される順序が配列[0]、配列[1]、配列[2]、...の順序であるという保証はありますか?
これが Array クラスの現在の実装方法であることは知っていますが、フレームワークの将来のバージョンに対する保証はありますか? 同じ質問が List<> にも当てはまります。
保証はありません。ほとんどのリスト/配列の実装は値を順番に返しますが、特にあまり一般的でないコレクション クラスのいくつかでは、確実に例外があります。(たとえば、C5 では、多くのコレクションが、列挙されたときに追加された順序とは非常に異なる順序で値を返します。)
設計上の保証はありません。foreach は順序のない列挙を目的としており、ランタイムが複数の要素を並行して処理する可能性があることを意味します。列挙の順序に依存するべきではありません。