how do stacks, lists, arrays, etc have a collection expression? - C#