IT

LINQ ToDictionary와 ToLookup의 차이점은 무엇입니까

lottoking 2020. 7. 26. 11:53
반응형

LINQ ToDictionary와 ToLookup의 차이점은 무엇입니까


LINQ ToDictionary와 ToLookup의 차이점은 무엇입니까? 그들은 같은 일을하는 것입니다.


사전은 1 : 1 맵 (각 키는 단일 값에 매핑 됨)이며 사실 나중에는 사전을 사용할 수 있습니다 (편집 가능).

조회는 1 : 많은 맵 (다중 맵, 각 키는 IEnumerable<>해당 키의 값 중 하나 매핑 됨 )이며 ILookup<,>인터페이스는 변경이 없습니다 .

부수적으로, 존재하지 않는 키에서 (인덱서를 통해) 조회를 쿼리하면 빈 시퀀스가 ​​표시됩니다. 사전과 동일한 작업을 수행하면 예외가 발생합니다.

각 키를 공유하는 레코드는 몇 개입니까?

그것을 보는 지나치게 단순화 된 방법은 Lookup<TKey,TValue>대략적 으로Dictionary<TKey,IEnumerable<TValue>>


ToDictionary는 <TKey, TValue>이고 ToLookup <TKey, T1, T2, T3, ...>은 IGrouping과하지만 열거는 메모리에 남아 있습니다.

참고 URL : https://stackoverflow.com/questions/5659066/what-is-the-difference-between-linq-todictionary-and-tolookup

반응형