Java 哈希集构造函数内联

Java hashset constructor inline

我有这段代码:

        manager.addAxiom(
            ontology,factory.getOWLSubClassOfAxiom(
                    factory.getOWLClass("CCC", prefix ),
                    factory.getOWLObjectIntersectionOf(
                            Arrays.asList(
                                    factory.getOWLObjectComplementOf(
                                            factory.getOWLClass("AAA", prefix )),
                                    factory.getOWLClass("AAA", prefix )) )))  ;

如您所见,我使用 Arrays.asList 表示 OWLClassExpressions 列表。 这对 OWLAPI 5 有效,但现在我必须对不支持 List 而只支持 Set 的 OWLAPI4 做同样的事情。 如何转换此代码,这意味着使用 Set class?

的内联构造函数

你可以使用

manager.addAxiom(
            ontology,factory.getOWLSubClassOfAxiom(
                    factory.getOWLClass("CCC", prefix ),
                    factory.getOWLObjectIntersectionOf(
                            new HashSet<T> (Arrays.asList(
                                    factory.getOWLObjectComplementOf(
                                            factory.getOWLClass("AAA", prefix )),
                                    factory.getOWLClass("AAA", prefix )) ))))  ;

其中 T 是数组元素的类型(例如 OWLClassExpression)。