2011-09-08 68 views
12

在Python可以做的:C#的類似Python的字典聲明?

d = {1 : 'Hello', 2 : 'World'} 

在C#中它更詳細:

Dictionary<int, string> d = new Dictionary<int, string>(); 
d.Add(1, 'Hello'); 
d.Add(2, 'World'); 

我怎樣才能使這個更簡潔一些?

回答

22

可以使用collection initializer syntax(和implicit typing with var):

var myDict = new Dictionary<int, string> { {1, "Hello"}, {2, "World"} }; 

此代碼實際上將被編譯成你有上面的代碼。請注意,您(不幸)不能忽略構造函數或泛型類型參數。

不是Pythonic,但到達那裏!