C # 'daki foreach döngüsünün bir System.Collections.Generic.List<T>
nesneden geçtiği sırayı merak ediyordum .
Aynı konuyla ilgili başka bir soru buldum , ancak sorumu tatmin edecek şekilde yanıtladığını düşünmüyorum.
Birisi hiçbir siparişin tanımlanmadığını belirtiyor. Ancak başka birinin de belirttiği gibi, bir diziyi geçme sırası sabittir (0'dan Uzunluk-1'e). 8.8.4 foreach ifadesi
Aynı durumun, bir siparişe sahip herhangi bir standart sınıf için de geçerli olduğu söylendi (örneğin List<T>
). Bunu yedekleyecek herhangi bir belge bulamıyorum. Yani, bildiğim kadarıyla, şimdi böyle çalışabilir, ancak belki bir sonraki .NET sürümünde farklı olacaktır (olası olmasa da).
List(t).Enumerator
Belgelere de şanssız baktım .
İlgili başka bir soru , Java için, belgelerde özellikle belirtildiğini belirtir:
List.iterator()
bu listedeki öğeler üzerinde uygun sırada bir yineleyici döndürür. "
C # belgelerinde buna benzer bir şey arıyorum.
Şimdiden teşekkürler.
Düzenleme: Tüm yanıtlarınız için hepinize teşekkür ederim (bu kadar hızlı yanıt almam şaşırtıcı). Tüm cevaplardan anladığım şey List<T>
, her zaman indeksleme sırasına göre yineleniyor. Ancak yine de Java belgelerineList
benzer şekilde bunu belirten açık bir belge görmek istiyorum .