相关疑难解决方法(0)

如何使用枚举与分组和子组层次结构/嵌套

我有一个enumExample"如下"的"班级" :

enum Example {
//enums belonging to group A:
   enumA1,
   enumA2,
   enumA3,
//enums belonging to group B:
   enumB1,
   enumB2,
   enumB3,
//enums belonging to group C:
   enumC1,
   enumC2,
   enumC3;
}
Run Code Online (Sandbox Code Playgroud)

对我的项目来说,重要的是他们所使用的所有枚举都属于Example(因为这是类的构造函数中的参数).

如何使用enum层次结构/嵌套来实现以下目标:

  • 测试是否属于enumA,B或C组的方法.例如,类似于Example.enumA1.isGroupBelonging(Group.A)isGroupBelonging(Example.enumA1,Group.A)将是返回true的公共方法.

  • 能够对组的子组做同样的事情A,B并且C.例如,组A可能有子组a,bc.然后我想要一个方法,做一些像Example.enumA1.isSubGroupBelonging(SubGroup.a)这样的东西public boolean.

  • 一种方法来完成所有这些,而不需要一些精心设计的enum名称堵塞我的代码.例如,能够Example.enumA1在我的其他类中引用而不需要使用类似Example.enumA1(Group.A,SubGroup.a)或类似的东西来引用它将是很好的Example.enumA1.Group.A.SubGroup.a

java enums grouping nested hierarchy

20
推荐指数
2
解决办法
2万
查看次数

打破一个大的Java枚举

采用具有1300个值并将其放入有组织组的Java枚举的建议做法是什么?我知道你不能只扩展枚举组,那么还有其他好的选择吗?

java enums

5
推荐指数
3
解决办法
2976
查看次数

标签 统计

enums ×2

java ×2

grouping ×1

hierarchy ×1

nested ×1