b> 这段 C# 代码创建了一个 ArrayList。然后它向 ArrayList 添加了一些“BoxesOfWidgets”,在每个盒子中添加了 Widget。GetRidOfTheSmallWidgets 方法旨在摆脱所有
问问题
129 次
2 回答
1
foreach (object objBox in colBoxesOfWidgets)
{
BoxOfWidgets box = (BoxOfWidgets)objBox;
for (int i = 0; i < box.colWidgets.Count; i++ )
{
Widget widget = (Widget)box.colWidgets[i];
if (widget.length < 20f)
{
box.colWidgets.Remove(widget);
i--;
}
}
}
}
您可以使用泛型类型:
List<BoxOfWidgets> boxs = new List<BoxOfWidgets>();
boxs.Add(new BoxOfWidgets("Cardboard"));
于 2012-04-27T07:57:38.183 回答
1
也试过了
public static ArrayList GetRidOfTheSmallWidgets(ArrayList colBoxesOfWidgets)
{
BoxOfWidgets[] bow = colBoxesOfWidgets.OfType<BoxOfWidgets>().ToArray();
for (int i = 0; i < bow.Length; i++)
{
Widget[] warr = bow[i].colWidgets.OfType<Widget>().ToArray();
for (int j = 0; j < warr.Length; j++)
{
if (warr[j].length < 20)
bow[i].colWidgets.Remove(warr[j]);
}
}
return colBoxesOfWidgets;
}
于 2012-04-27T07:55:00.507 回答