首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >数组中的EnumSet,最短的变量?

数组中的EnumSet,最短的变量?
EN

Stack Overflow用户
提问于 2014-04-06 04:20:09
回答 5查看 13.6K关注 0票数 42

我需要一个来自数组的EnumSet (它是通过varargs方法参数给出的)。首先,我很惊讶在EnumSet中没有EnumSet#of(E first, E... rest)构造函数方法(有varargs )。作为一种解决方法,我使用了以下变体:

EnumSet<Options> temp = EnumSet.copyOf(Arrays.asList(options));

但是,这会触发java.lang.IllegalArgumentException: Collection is empty。因此,现在我得出了以下结论,这看起来有点可笑:

EnumSet<Options> temp = options.length > 0 ? 
                        EnumSet.copyOf(Arrays.asList(options)) : 
                        EnumSet.noneOf(Options.class);

当然,这可以转移到一些实用方法,但我仍然在问自己,是否有更简单的方法使用现有的方法?

EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/22886287

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档