【发布时间】:2018-03-16 19:33:58
【问题描述】:
我对如何正确使用和组合枚举标志感到困惑。下面是代码示例。如果我调用GetCarByColor(CarColor.Blue),我希望它返回所有颜色为蓝色的汽车,但在这种情况下,它返回一个空列表,因为我列表中的汽车是红色或蓝色。如果汽车可能是蓝色的,我该如何正确返回正确的汽车列表?
<Flags>
Public Enum CarColor
Red = 1
Green = 2
Blue= 4
End Enum
Public Class Cars
Public Property Color as CarColor
End Class
Public Class GetCars
Private _cars as List(of Car) From {New Car() With {Color = CarColor.Red Or CarColor.Blue}}
Public Function GetCarByColor(color as CarColor) as List(of Car)
Return _cars.Where(Function(f) f.Color = color).ToList
End Sub
End Class
【问题讨论】: