我是C#的新手,但我從不明白字典末尾的()是什麼意思!字典末尾的()是什麼?
比方說,我有一個類,我宣佈這樣一個領域:
public Dictionary<InventoryType, Inventory> Inventory { get; private set; }
,然後在構造函數中,我有:
Inventory = new Dictionary<InventoryType, Inventory>(6);
在到底是什麼6手段?謝謝!
我是C#的新手,但我從不明白字典末尾的()是什麼意思!字典末尾的()是什麼?
比方說,我有一個類,我宣佈這樣一個領域:
public Dictionary<InventoryType, Inventory> Inventory { get; private set; }
,然後在構造函數中,我有:
Inventory = new Dictionary<InventoryType, Inventory>(6);
在到底是什麼6手段?謝謝!
那6
是初始容量。這是收藏的一個柔和指示,它會有多大,它不是任何種類的限制。
當您知道某個集合將包含一定數量的元素時,爲這些元素一次分配空間效率稍高一些。否則,該集合將使用算法來增長,但涉及複製數據。
大多數集合以capcity = 4開頭,當它填滿時,它們會增長到8,然後增加到16等。每次分配一個新的內部數組(取決於精算集合)並且現有數據必須被複制。
這意味着6是相當低的,而且幾乎不值錢。
你究竟是什麼意思?庫存字段最多可容納庫存類的6個對象? – user2714359
@ user2714359,該詞典儲量記憶6個條目的前期。 – CMircea
@CMircea沃特瞭解釋你爲什麼會想使用此。 –
這是'capacity'其中用於分配的初始內存爲您'Dictionary',如果你的'Dictionary'增長比大,它會自動增加。 –