почему foreach быстрее, чем цикл, при чтении строк richtextbox

Есть два способа читать данные из RichTextBox построчно

1) использовать цикл for для обхода строк richtextBox

String s=String.Empty;
for(int i=0;i<richtextbox.lines.length;i++)
 {
     s=richTextBox.Lines[i]
 }

2) использовать цикл foreach для перечисления коллекции richTextBox.Lines

   String s=String.Empty;
   foreach(string str in txtText.Lines)
    {
       s=str;
    }

Существует огромная разница в производительности, когда мы используем цикл foreach для перечисления коллекции массивов для richtextbox.

Я попытался с 15000 строк. Для цикла потребовалось 8 минут, чтобы просто зациклиться до 15000 строк. В то время как foreach занял долю секунды, чтобы перечислить его.

Почему это поведение там?

Ответы на вопрос(5)

Ваш ответ на вопрос