This article has been localized into Portuguese by the community.
Inicializadores de coleção
Assim como o C # 3.0 oferece uma nova maneira de inicializar objetos, uma nova sintaxe para inicializar uma lista com um conjunto específico de itens adicionados a ele foi incluída. Podemos usar a classe Car do último capítulo:
class Car
{
public string Name { get; set; }
public Color Color { get; set; }
}
Se quiséssemos criar uma lista para conter um intervalo de carros, teríamos que fazer algo parecido com o C # 2.0:
Car car;
List<Car> cars = new List<Car>();
car = new Car();
car.Name = "Corvette";
car.Color = Color.Yellow;
cars.Add(car);
car = new Car();
car.Name = "Golf";
car.Color = Color.Blue;
cars.Add(car);
Usando inicializadores de objetos, poderíamos fazer isso um pouco mais curto:
List<Car> cars = new List<Car>();
cars.Add(new Car { Name = "Corvette", Color = Color.Yellow });
cars.Add(new Car { Name = "Golf", Color = Color.Blue});
No entanto, pode ser ainda mais simples quando combinado com inicializadores de coleção:
List<Car> cars = new List<Car>
{
new Car { Name = "Corvette", Color = Color.Yellow },
new Car { Name = "Golf", Color = Color.Blue}
};
Ou na versão de uma linha, que faz exatamente o mesmo:
List<Car> cars = new List<Car> { new Car { Name = "Corvette", Color = Color.Yellow }, new Car { Name = "Golf", Color = Color.Blue} };
10 linhas de código foram reduzidas a uma única linha, embora um pouco longa, graças aos inicializadores de objeto e coleção.