entfernen würde, einen Schlüssel aus einem Wörterbuch in der foreach-ein problem? oder sollte ich besser zu konstruieren, die ein neues Wörterbuch?

Beispiel:

1.

         foreach (var item in myDic)
                {
                  if (item.value == 42)
                        myDic.remove(item.key);
                }

würde der iterator funktioniert einwandfrei, egal wie die Aussagen in den inneren Klammern könnte möglicherweise beeinflussen myDic?

2.

    var newDic = myDic.where(x=>x.value!=42).ToDictionary(x=>x.key,x=>x.value);

Ist der 2. Ansatz eine gute Praxis? funktionale Programmierung und unveränderlich?

InformationsquelleAutor colinfang | 2011-08-24

Schreibe einen Kommentar