Я пытаюсь перебрать множество продуктов.Мне было интересно, можно ли вообще изменить элемент массива, а затем повторить его снова, чтобы отобразить его с отредактированным элементом.
Вот код:
public enum ProductStatus
{
ForSale,
Sold,
Shipped
}
class Product
{
private string description;
private decimal price;
private ProductStatus status;
public string Description
{
get { return description; }
set { description = value; }
}
public decimal Price
{
get { return price; }
set { price = value; }
}
public ProductStatus Status
{
get { return status; }
set { status = 0; }
}
И затем для создания экземпляра массива:
Product[] products = new Product[3];
products[0] = new Product() { Description = "Dress", Price = 69.99M };
products[1] = new Product() { Description = "Hat", Price = 5.95M};
products[2] = new Product() { Description = "Slacks", Price = 32.00M};
Переопределив метод ToString()
, я перебираю его следующим образом:
ProductStatus status = ProductStatus.ForSale;
ProductStatus nextStatus = status + 1;
for (int i = 0; i < products.Length; i++)
{
Product p = products[i];
Console.WriteLine("{0}: " + p.ToString(), status.ToString());
}
Я хотел бы использовать nextStatusизменить первый индекс ProductStatus с «ForSale» на «Sold» (а затем «Shipped» впоследствии), а затем снова выполнить цикл по массиву, чтобы показать изменения.Как это сделать?