我有一个arraylist包含名为Room的项目.每个房间都有一个房间类型,如厨房,接待等.我想检查arraylist,看看是否有任何类型的房间存在,然后再将其添加到列表中.任何人都可以推荐一种简洁的方法,而不需要多个foreach循环吗?
(.NET 2.0)
我没有访问linq技术,因为我在.net 2.0上运行.我应该在问题中说明.道歉
我不会ArrayList
在这里使用; 因为你有.NET 2.0,使用List
和所有变得简单:
Listrooms = ... string roomType = "lounge"; bool exists = rooms.Exists(delegate(Room room) { return room.Type == roomType; });
或者使用C#3.0(仍然针对.NET 2.0)
bool exists = rooms.Exists(room => room.Type == roomType);
或者使用C#3.0以及LINQBridge或.NET 3.5:
bool exists = rooms.Any(room => room.Type == roomType);
(Any
用法适用于更多类型,而不仅仅是List
)