In welcher Reihenfolge durchläuft ein C # für jede Schleife eine Liste <T>?

Ich habe mich gefragt, in welcher Reihenfolge eine foreach-Schleife in C # eineSystem.Collections.Generic.List<T> Objekt.

ich fandeine andere Frage über das gleiche Thema, aber ich habe nicht das Gefühl, dass es meine Frage zu meiner Zufriedenheit beantwortet.

Jemand gibt an, dass keine Reihenfolge definiert ist. Aber wie jemand anderes angibt, ist die Reihenfolge, in der ein Array durchlaufen wird, fest (von 0 bis Länge-1).8.8.4 Die foreach-Anweisung

Es wurde auch gesagt, dass das gleiche für alle Standardklassen mit einer Bestellung gilt (z.List<T>). Ich kann keine Dokumentation finden, um das zu sichern. Soweit ich weiß, könnte es jetzt so funktionieren, aber vielleicht wird es in der nächsten .NET-Version anders sein (auch wenn es unwahrscheinlich ist).

Ich habe mir auch das angeschautList(t).Enumerator Dokumentation ohne Glück.

Eine andere verwandte Frage gibt an, dass es für Java in der Dokumentation ausdrücklich erwähnt wird:

List.iterator()gibt einen Iterator über die Elemente in dieser Liste in der richtigen Reihenfolge zurück. "

Ich suche so etwas in der C # -Dokumentation.

Danke im Voraus.

Edit: Vielen Dank für all deine Antworten (unglaublich, wie schnell ich so viele Antworten bekommen habe). Was ich aus all den Antworten verstehe, ist dasList<T> iteriert immer in der Reihenfolge seiner Indizierung. Aber ich würde immer noch gerne eine klare Dokumentation sehen, ähnlich wie in derJava-Dokumentation aufList.

Antworten auf die Frage(5)

Ihre Antwort auf die Frage