Por que foreach é mais rápido que o loop durante a leitura de linhas richtextbox?
Existem duas maneiras de ler dados do RichTextBox linha por linha
1) use um loop for para percorrer as linhas de um richtextBox
String s=String.Empty;
for(int i=0;i<richtextbox.lines.length;i++)
{
s=richTextBox.Lines[i]
}
2) use um loop foreach para enumerar a coleção richTextBox.Lines
String s=String.Empty;
foreach(string str in txtText.Lines)
{
s=str;
}
Há uma enorme diferença no desempenho quando usamos o loop foreach para enumerar a coleção de matriz para richtextbox.
Eu tentei com 15.000 linhas. Para loop levou 8 minutos para apenas loop para 15000 linhas. While foreach levou fração de segundo para enumerá-lo.
Por que esse comportamento está aí?