내가 사용하는 것이 좋습니다 무엇 Dictionary<TKey, TValue>
에서 액세스 전용 키가있는 경우 :Dictionary <>. ForEach (pair =>) 또는 Dictionary <>. Keys.ForEach (key =>)보다 나은 것은 무엇입니까?
Dictionary<TKey, TValue>.ForEach(pair => action(pair.Key))
또는
Dictionary<TKey, TValue>.Keys.ForEach(key => action(key))
어떤 방법이 더 '모범 사례'이다? 두 경우 모두 속도가 비슷하다고 생각합니다.
그가 람다를 가지고 있다면 그는 그 foreach를 정리하기 위해 'var'를 가지고 있습니다. – user7116
실제로'.Keys'는 실질적으로 :'.Select (a => a.Key)'와 실질적으로 동일하기 때문에 절대 빠르지 않을 것입니다. KeyCollection : ICollection, IEnumerable , ICollection, IEnumerable'입니다. 어느 쪽이든 성능의 유일한 차이점은 처음으로 새 객체 (약 10 개의 정수를 더하는 것과 같습니다)를 할당해야한다는 것입니다. 그리고이 새 객체에는 부모 객체에 대한 참조가 있습니다. 따라서 메모리 사용량은 극히 적습니다. –
Aidiakapi