如何在Java中将LinkedHashSet转换为EnumSet?

如何在Java中将LinkedHashSet转换为EnumSet?,java,spring,set,neo4j,javabeans,Java,Spring,Set,Neo4j,Javabeans,我正在尝试创建一个bean,用于将LinkedHashSet转换为EnumSet。这是必需的,因为Neo4j需要一个用于这种情况的转换类。到目前为止,我已经实施了该课程: public class LinkedHashSetToEnumSet implements Converter<LinkedHashSet<Access>, EnumSet<Access>> { @Override public EnumSet<Access>

我正在尝试创建一个bean,用于将
LinkedHashSet
转换为
EnumSet
。这是必需的,因为Neo4j需要一个用于这种情况的转换类。到目前为止,我已经实施了该课程:

public class LinkedHashSetToEnumSet implements Converter<LinkedHashSet<Access>, EnumSet<Access>> {

    @Override
    public EnumSet<Access> convert(LinkedHashSet<Access> h) {
        EnumSet<Access> e = new EnumSet<Access>(); // error here
        // Somehow do a for loop to add all of e to h?
        return e;
    }

} 
公共类LinkedHashSetToEnumSet实现转换器{
@凌驾
公共枚举集转换(LinkedHashSet h){
EnumSet e=new EnumSet();//此处出错
//以某种方式做一个for循环,将所有e添加到h?
返回e;
}
} 
我在注释行
//error here
中得到一个错误,错误是:

无法实例化类型EnumSet

创建
EnumSet
,这里是否缺少一些简单的东西

编辑:


是否可以将
哈希集
转换为
枚举集

错误很明显:
枚举集
没有构造函数,创建构造函数的唯一方法是使用类中接收实际枚举值的静态方法。如果需要使用
LinkedHashSet
中的所有元素创建
EnumSet
,请尝试以下操作:

public EnumSet<Access> convert(LinkedHashSet<Access> h) {
    return EnumSet.copyOf(h)
}

public EnumSet,并将枚举值的任何
Collection
作为参数传递。

这是因为我正在尝试将枚举集存储在Neo4j存储库中。我需要一个转换类。警告:
EnumSet.copyOf
throws
IllegalArgumentException
如果其参数为空集合!这就是为什么它不需要
参数。