다음과 같은 것이 작동합니다 (죄송이-확인 구문되지 않음) :이 방법은 그것을 할 경우
// This requires the array of Categories to have no duplicates.
public Dictionary<string, PdfOutline> BuildUpMyCollectionOfOutlines(string[] categories)
{
return categories.ToDictionary(cat => new KeyValuePair<string, PdfOutline>(cat, null));
}
, 그럼 나중에 (같은 결과를 소비 할 수 할 수있는 기능을 가지고 있지만, List<KeyValuePair<string, PdfOutline>>
1에 따라 같은
public PdfOutline GetOutlineByCategory(Dictionary<string, PdfOutline> outlines, string category)
{
// This will be problematic if the category isn't actually in the dictionary.
return outlines[category];
}
당신이 뭔가 다른 대 Dictionary<string, PdfOutline>
을 사용할지 여부) 당신이하고 있습니다 얼마나 많은 이들의이은) 그것을 소비하는 방법을 보여 그냥 내 방식 바보입니다 2) 어떻게 액세스 할 수 있습니다. 예를 들어, 10,000 개가 있고 범주 이름별로 무작위로 반복해서 찾아야하는 경우 사전은 빠른 검색 (데이터베이스의 테이블에서 색인으로 생각)을 위해 해시하기 때문에 올바른 접근 방식입니다. 그러나 10,000 명이 있지만 그 중 2 명만 찾거나 그 중 하나를 필요로한다면 10 명 만 있으면 빠른 검색 기능을 구축하는 데 필요한 오버 헤드가 낭비됩니다. 따라서 Dictionary vs other는 "데이터베이스 테이블에 있다면 색인을 생성 하시겠습니까?"라는 질문에 가장 잘 답변됩니다.