讓我們說,我有一個enum BasicType
,其定義如下:枚舉的聯盟成員在C#
public enum ObjectType{
A = 1,
B = 2,
C = 3,
}
的BasicType標識執行任何Object
的三元分類。隨後,我意識到對象甲和乙需要以類似的方式進行處理相比,Ç,所以限定的另一enum ObjectGroupType
如下:
public enum ObjectGroupType
{
AB = 1,
C = 2,
}
隨着新的枚舉,我我能夠將多種已知類型的對象作爲一個對象。因此,當我收到各種類型的對象流時,我實際上會識別它們是屬於AB還是C類型。有沒有一個優雅的解決方法呢?舉例來說,我將能夠在ObjectGroupType
指定爲A和B相同的枚舉值:?
編輯1:我無法找到相似的問題here
編輯2 :感謝Maurice對你的建設性意見 - 從你的回答中得到線索,我想出了這個重新定義的ObjectGroupType
。
public enum ObjectGroupType
{
AB = ObjectType.A | ObjectType.B
C = 2,
}
這是有效的嗎?
本質上,當我處理AB類型的對象流時,我想確定類型A或類型B的對象。這是非常相似的分級兩級決策樹:
object
/ \
AB C
/\
A B
你有,你想如何使用這個'enum'工作的例子嗎? – Jace
你爲什麼要標記java? – ganesshkumar
這看起來像是一個副本https://stackoverflow.com/questions/8043027/non-unique-enum-values – Olathe