【发布时间】:2011-09-25 10:30:12
【问题描述】:
我正在尝试遍历一系列产品。我想知道是否可以更改数组的一个元素,然后再次循环遍历它以将其与编辑后的元素一起显示。
代码如下:
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”),然后再次循环遍历数组以显示更改。如何做到这一点?
【问题讨论】:
-
不清楚是什么问题。只需循环两次(或 3x、4x、...)
标签: c# .net arrays loops enums