比如我有四個表格,我想存儲是這樣的:什麼是數據stucture存儲這類數據
Rows 1,2,3 from spread1,
Rows 1,2 from spread2,
Rows 3,4 from spread3,
Row 3 from spread4
,我想我應該使用詞典<>但MSDN說,關鍵應該是uniqe。 那麼這樣做的正確方法是什麼?
P.S:我使用.NET 3.5,不能使用Tuple。 謝謝
比如我有四個表格,我想存儲是這樣的:什麼是數據stucture存儲這類數據
Rows 1,2,3 from spread1,
Rows 1,2 from spread2,
Rows 3,4 from spread3,
Row 3 from spread4
,我想我應該使用詞典<>但MSDN說,關鍵應該是uniqe。 那麼這樣做的正確方法是什麼?
P.S:我使用.NET 3.5,不能使用Tuple。 謝謝
做一個自定義的類,並使用它作爲你的鑰匙。包括創建唯一鍵(電子表格名稱和行列表)所需的所有字段,然後適當地覆蓋Equals和GetHashCode。
有沒有什麼辦法可以爲此創建一個Collection集合?而不是一個新的類......當前代碼在整個代碼中都使用它作爲全局變量。 – Bohn
這聽起來像是我的名單,List<List<T>>
。將它包裝在自定義類中以提供所需的語義可能會很好(如果不是,記住哪些列表中的內容會變得複雜,並且可能需要在每個子列表上添加一些額外的元數據)。
可以請你給我看一個這個清單列表聲明的示例代碼嗎? – Bohn
快速straigtforward解決方案:
IDictionary<string, IList<int>> map = new Dictionary<string, IList<int>>
{
{ "spread1", new List<int> { 1, 2, 3 } },
{ "spread2", new List<int> { 1, 2 } },
{ "spread3", new List<int> { 3, 4 } },
{ "spread5", new List<int> { 3 } }
}
如果你需要某種靈活性 - 通過自定義類的抽象利差和相關行像其他人建議。
看起來像我所需要的。但對我來說仍然是一個困惑,在這裏你是硬編碼1,2,3 ......但在真實的代碼中,例如這是在一個方法調用中,每次調用這個方法時,我們都會添加其中的一個值,例如我們將值2添加到spread1字典中......下次我們將值4添加到spread3字典中......但是在示例代碼中,我們使用NEW,那麼如何仍然可以保留之前的值並添加到它們? – Bohn
你想處理範圍嗎?即行1至56,而不必列出全部56個行號? –
nop,no range .. – Bohn