Avatar ·

如何在C#中正确初始化带有初始值的Dictionary?

大家好!我刚开始学习C#,在使用Dictionary时遇到了问题。我需要创建一个已经包含一些初始值的字典,例如国家代码与其名称的对应关系。 我知道可以这样做: ```csharp var countries = new Dictionary(); countries.Add("RU", "Россия"); countries.Add("US", "США"); countries.Add("DE", "Германия"); ``` 但这会占用很多行,特别是当值很多的时候。我听说在C#中有更短的语法,可以在创建对象时直接初始化。我尝试过这样写: ```csharp var countries = new Dictionary { "RU" = "Россия", "US" = "США" }; ``` 但这不起作用——编译器报错。请告诉我正确的初始化带有初始值的字典的语法是什么?.NET Framework和.NET Core之间有区别吗?如果我想初始化一个非字符串类型的字典该怎么办?