C# orientado a objetos

Denunciar
-
Message postés
2
Date d'inscription
lunes, 6 de abril de 2020
Estatus
Miembro
Última intervención
lunes, 6 de abril de 2020
-
me podrian apoyar, tengo una clase llamada cancion y una clase llamada CD

como realizar un metodo dentro de la clase CD que agregue objetos de tipo cancion a un array, luego invocarlo dentro de un boton



Configuración: Windows / Chrome 49.0.2623.112

1 respuesta

Message postés
2
Date d'inscription
lunes, 6 de abril de 2020
Estatus
Miembro
Última intervención
lunes, 6 de abril de 2020
1
Lo unico que falta es hacer el llamado desde un boton, pero el resto esta ahi.
No se debe usar un array de strings ya que es inmutable en tamaño, asi que el adicionar no es tan facil, pero se puede usar una lista y luego hacer la conversion:

tambien puedes ver el codigo funcionando aqui: https://dotnetfiddle.net/uOwTDo


using System;
using System.Collections.Generic;
using System.Linq;

public class Program
{
public static void Main()
{
Cancion c1 = new Cancion("Dancing Queen");
Cancion c2 = new Cancion("Under Pressure");
Cancion c3 = new Cancion("Dust in the Wind");

CD cd = new CD();
cd.AdicionarCancion(c1);
cd.AdicionarCancion(c2);
cd.AdicionarCancion(c3);

string[] arrayDeCanciones = cd.RetornarComoArray();

foreach(string c in arrayDeCanciones){
Console.WriteLine(c);
}
}
}

public class CD {
public List<Cancion> Canciones {get;set;}

public CD (){
Canciones = new List<Cancion>();
}

public void AdicionarCancion(Cancion c){
Canciones.Add(c);
}

public string[] RetornarComoArray(){
return Canciones.Select(x => x.Name).ToArray();
}
}

public class Cancion {
public string Name {get;set;}

public Cancion(string name) {
Name = name;
}
}