Циклы for и foreach C#
Чем отличаются эти два цикла можно кратко, но понятно сказать? цикл фор мне более знаком, а чем он отличается и тд, расскажите, пожалуйста
foreach используется для перебора всех элементов в каком-то массиве (или какой-нибудь другой массивоподобной структуре) по порядку.
Например, есть массив A{1,2,3,4,5}.
Можно перебрать элементы так, обращаясь к ним по номеру (i):
for (int i=0; i<A.Length; i++)
А можно так:
foreach (int k in A)
Во втором случае меньше писать и сама конструкция более понятна, зато неизвестен номер элемента (а как же, не факт, что он вообще есть, если брать другие структуры, навроде множеств) и не факт, что элементы мы получим в нужном нам порядке.
Foreach работает с перечислимыми типами и контейнерами реализующими интерфейс IEnumerable
Могу только добавить, что foreach позволяет только читать элементы коллекции, но изменить их нельзя. В цикле for их можно изменять.