我有一個實現某種字典對象的需求。像MyDict<K,V1, V2)
。例如,如果我有一個問題作爲關鍵(k),那麼正確的答案是V1。 V2是用戶選擇的答案。是否有一個集合可以滿足C#中的這個需求。如果我必須設計自己的類型,我應該實現什麼接口。 ICollection
和Ilist
?C#泛型集合幫助
C#泛型集合幫助
回答
如果您使用的是.NET 4,則可以使用幾個通用的Tuple
類。
所以,你可以使用:
Dictionary<T,Tuple<V1,V2>>
在早期版本中,你可以使用KeyValuePair<T1,T2>
作爲第二泛型類型:
Dictionary<T,KeyValuePair<V1,V2>>
有趣。未來也可能有多個正確的答案。所以我應該創建一個沒有任何泛型的類型。 like class mytype { string問題; IList
集合類被定義爲System.Collections
或System.Collections.Generic
命名空間的一部分。
東西沿着線:
Dictionary<Question,Answer> qDict = new Dictionary<Question, Answer>();
Answer attempt_v2 = new Answer();
Question question = new Question();
if (qDict.ContainsKey(question))
{
Answer actual_answerv1 = qDict[question];
if (actual_answerv1 == attempt_v2)
{
// Answers match
}
}
[注:我只是敲這件事。它可能不是解決匹配問題和答案的最佳解決方案...]
感謝您的幫助。應該是這樣的。 – dcmovva 2010-05-16 07:10:58
我認爲需要一個新的實現。
或者如果您的答案有一個屬性選擇您可以創建。
Dictionary<Question, IList<Answer>>
或U可以有
class Answers {
Ilist Answers;
Answer Selected;
}
感謝回覆 – dcmovva 2010-05-16 07:11:46
- 1. 幫助我重構泛型集合
- 2. C#泛型需要幫助
- 3. Java泛型幫助
- 4. C#泛型和集合
- 5. C#泛型和集合
- 6. C#與泛型集合類
- 7. 泛型集合
- 8. 泛型幫助需要
- 9. 在html幫助器中從視圖模型訪問泛型集合
- 10. 泛型與集合
- 11. 泛型集合MVC
- 12. Laravel泛型集合
- 13. Java泛型和集合集
- 14. 集合泛型類型
- 15. 有沒有包裝非泛型集合的泛型集合庫?
- 16. 從泛型集合到非泛型集合
- 17. C#中的泛型集合是IXmlSerializable?
- 18. C#解析JSON到泛型集合
- 19. C#暴露類COM - 泛型集合
- 20. C#繼承泛型集合,系列化...
- 21. 序列化泛型集合集合
- 22. SQL集合函數幫助
- 23. 助理使用C#泛型
- 24. 幫助泛型?如何定義泛型方法?
- 25. 泛型集合佩奇
- 26. Java的泛型集合
- 27. Java泛型和集合
- 28. 的ArrayList和泛型集合
- 29. 泛型集合沒有
- 30. 嵌套Java集合泛型
該版本的.NET Framework的類型? – 2010-05-16 06:54:45
框架是.net 3.5 – dcmovva 2010-05-16 06:58:27