问题标签 [enumset]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
469 浏览

java - EnumSet / EnumMap 需要泛化 Set / Map

EnumSet/EnumMap可以通过指定定义的枚举来创建 set/map 实例,如下面的示例代码所示。

到目前为止,我读到,EnumSet/EnumMap与 Set/Map 的区别在于我们不能添加EnumEnumSet/EnumMap. 如果是这种情况,那么仅仅泛型化的 Set/Map 本身就足够了,不是吗?

请找到EnumSet/EnumMap它们各自的泛型Set/Map如下,

那么您能否告诉我,EnumSet/EnumMap即使我们能够创建泛化为已定义枚举的集合/映射,有什么需要?

提前致谢。

0 投票
0 回答
60 浏览

c++ - 给定一个“黑盒”枚举,是否可以检查提供的积分是否是 C++ 中枚举的有效成员?

我正在EnumSet为一个项目写一个类。如果可能的话,我想有一个EnumSet::AllOf()方法,比如在 Java 中。解决此问题的明显方法是遍历 的每个成员std::underlying_type并尝试将其强制转换为枚举类,然后从可能的第一个元素到最后一个元素。

您不知道枚举的最低或最高元素是什么,因此您必须搜索整个空间。

这甚至可能吗?如果是这样,怎么做?

编辑清晰:我正在寻找类似的东西

0 投票
1 回答
243 浏览

java - 在 enumSet 中存储不同的枚举类型

我想在一个枚举中存储不同的枚举类型。

这是正确(最短)的方式吗?

0 投票
2 回答
180 浏览

kotlin - 如何将 EnumSet 转换为 Set

0 投票
2 回答
231 浏览

java - EnumSet 作为泛型接口中的参数

我有一个用例:

但它抛出编译时错误:

B 类的方法 get 与 A 类型的 get(EnumSet fetchMode) 具有相同的擦除,但不会覆盖它。

我读过 Enums 不能是通用的,但有没有办法实现这个用例?(基本上希望EnumSet是泛型的,不同的实现可以传递不同的Enums)

0 投票
2 回答
49 浏览

java - 带有枚举的泛型集

问题空间已被剥离。

所以我有以下我无法改变的界面。

我创建了 Items 枚举类

所以当我实现该方法时它不会编译。

返回类型不匹配,我得到编译错误?有任何想法吗?

0 投票
1 回答
41 浏览

java - 如何使用 Class 调用 EnumSet#(all|none)Of

我需要使用未知类型的类调用EnumSet#nonOfEnumSet#allOf 。

0 投票
3 回答
196 浏览

java - Java中枚举内的EnumSet修饰符

使用修饰符在枚举中声明 EnumSetstaticfinal? 或者是多余的?

例子:

谢谢!

0 投票
2 回答
91 浏览

java - 涉及的静态字段的值发生变化后,布尔值保持为假

在我的作业中,我必须使用 anenum来制作EnumSet符合给定标准的元素。因此,代码需要尽可能灵活,并允许任何可应用于enum.

我一直在进行测试,我的代码涉及将最终的 theenum放入静态上下文中,以便boolean可以将 a 应用于它们,然后循环遍历 中的每个声明的对象enum以查看它们是否符合标准。但由于某种原因,当静态字段的值符合条件时,状态boolean不会更改为。true

这是我的代码:

将静态字段更改为volatile也不能解决问题,所以我认为这不是缓存问题。那么,为什么布尔值不更新?有解决办法吗?

提前致谢!

0 投票
1 回答
58 浏览

here-api - 使用 EnumSet 时出现意外的令牌

我正在使用 HERE MAPS SDK PREMIUM V3.18.3 并且我正在尝试使用 routeOptions.truckShippedHazardousGoods = RouteOptions.HazardousGoodType.COMBUSTIBLE 获取卡车路线这给出了一个错误说明:类型不匹配。必需:EnumSet<RouteOptions.HazardousGoodType!> 找到:RouteOptions.HazardousGoodType

所以我创建了一个枚举类:

}

如果我保持 ! 在 EnumSet<RouteOptions.HazardousGoodType!> 我得到错误:意外的令牌。当我将代码更改为

它显示: public final enum class Hazmat : EnumSet<RouteOptions.HazardousGoodType> 用于 Hazmat 并获得 COMBUSTABLE 的正确条目和 const。

但就像我说的,当我离开时,我得到了 Unexpected 错误令牌!在 EnumSet<RouteOptions.HazardousGoodType!>

如果我拿!出我得到这个错误:枚举类不能从类继承这个类型有一个构造函数,因此必须在这里初始化

我不确定我错过了什么?我查看了 HERE.com 文档,我发现了这个 API 参考,但它也遗漏了 ! 来自 EnumSet<RouteOptions.HazardousGoodType!> 但该链接也只使用 Enum<RouteOptions.HazardousGoodType> 而不是 EnumSet。我已经尝试过 Enum,但是当发现不匹配类型 Hazmat 并且需要 EnumSet<RouteOptions.HazardousGoodType!> 时它仍然给出错误。有任何想法吗?

编辑!!所以我尝试了这个,它似乎工作正常:

有一个更好的方法吗?