using System;
using System.Collections.Generic;
namespace Articulos.Cap04.Inicializadores
{
public class Persona
{
// Propiedades auto-implementadas:
public String Nombre { get; set; }
public String Apellido { get; set; }
}
public sealed class InicializadoresColecciones
{
public static void Main()
{
// Creación de lista genérica con objetos Persona:
List<Persona> listaPersonas = new List<Persona>()
{
new Persona { Nombre = "Alexander", Apellido = "Bell" },
new Persona { Nombre = "Alan", Apellido = "Turin" },
null
};
// Iteración por los elementos de la colección:
foreach (Persona persona in listaPersonas)
{
// Validamos que el elemento actual sea distinto de null:
if (persona != null)
{
Console.WriteLine ("Nombre: {0} - Apellido: {1}",
persona.Nombre,
persona.Apellido
);
}
}
}
}
}
dXNpbmcgU3lzdGVtOwp1c2luZyBTeXN0ZW0uQ29sbGVjdGlvbnMuR2VuZXJpYzsKCm5hbWVzcGFjZSBBcnRpY3Vsb3MuQ2FwMDQuSW5pY2lhbGl6YWRvcmVzCnsKICAgIHB1YmxpYyBjbGFzcyBQZXJzb25hCiAgICB7CiAgICAgICAgLy8gUHJvcGllZGFkZXMgYXV0by1pbXBsZW1lbnRhZGFzOgogICAgICAgIHB1YmxpYyBTdHJpbmcgTm9tYnJlIHsgZ2V0OyBzZXQ7IH0KICAgICAgICBwdWJsaWMgU3RyaW5nIEFwZWxsaWRvIHsgZ2V0OyBzZXQ7IH0KICAgIH0KICAgIAogICAgcHVibGljIHNlYWxlZCBjbGFzcyBJbmljaWFsaXphZG9yZXNDb2xlY2Npb25lcwogICAgewogICAgICAgIHB1YmxpYyBzdGF0aWMgdm9pZCBNYWluKCkKICAgICAgICB7CiAgICAgICAgICAgIC8vIENyZWFjacOzbiBkZSBsaXN0YSBnZW7DqXJpY2EgY29uIG9iamV0b3MgUGVyc29uYToKICAgICAgICAgICAgTGlzdDxQZXJzb25hPiBsaXN0YVBlcnNvbmFzID0gbmV3IExpc3Q8UGVyc29uYT4oKQogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICBuZXcgUGVyc29uYSB7IE5vbWJyZSA9ICJBbGV4YW5kZXIiLCBBcGVsbGlkbyA9ICJCZWxsIiB9LAogICAgICAgICAgICAgICAgbmV3IFBlcnNvbmEgeyBOb21icmUgPSAiQWxhbiIsIEFwZWxsaWRvID0gIlR1cmluIiB9LCAKICAgICAgICAgICAgICAgIG51bGwKICAgICAgICAgICAgfTsKICAgICAgICAgICAgCiAgICAgICAgICAgIC8vIEl0ZXJhY2nDs24gcG9yIGxvcyBlbGVtZW50b3MgZGUgbGEgY29sZWNjacOzbjoKICAgICAgICAgICAgZm9yZWFjaCAoUGVyc29uYSBwZXJzb25hIGluIGxpc3RhUGVyc29uYXMpCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgIC8vIFZhbGlkYW1vcyBxdWUgZWwgZWxlbWVudG8gYWN0dWFsIHNlYSBkaXN0aW50byBkZSBudWxsOgogICAgICAgICAgICAgICAgaWYgKHBlcnNvbmEgIT0gbnVsbCkKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICBDb25zb2xlLldyaXRlTGluZSAoIk5vbWJyZTogezB9IC0gQXBlbGxpZG86IHsxfSIsIAogICAgICAgICAgICAgICAgICAgICAgICBwZXJzb25hLk5vbWJyZSwgCiAgICAgICAgICAgICAgICAgICAgICAgIHBlcnNvbmEuQXBlbGxpZG8KICAgICAgICAgICAgICAgICAgICApOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9CiAgICAgICAgfQogICAgfQp9