Does C# allow hashtables to be populated in one-line expressions? I am thinking of something equivalent to the below Python:
mydict = {"a": 23, "b": 45, "c": 67, "d": 89}
In other words, is there an alternative to setting each key-value pair in a separate expression?
C# 3 has a language extension called collection initializers which allow you to initialize the values of a collection in one statement.
Here is an example using a
Dictionary<,>:This language extension is supported by the C# 3 compiler and any type that implements
IEnumerableand has a publicAddmethod.If you are interested I would suggest you read this question I asked here on StackOverflow as to why the C# team implemented this language extension in such a curious manner (once you read the excellent answers to the question you will see that it makes a lot of sense).