gpt4 book ai didi

java - Gremlin 3 中的类型过滤步骤?

转载 作者:行者123 更新时间:2023-11-30 11:03:16 26 4
gpt4 key购买 nike

我想知道如何在 Gremlin 3.x 中应用类型过滤器 GraphTraversal .例如,让我们考虑 Graph of the Gods作为示例图。

在这里,我们可以做以下事情:

Set<Element> set = graph.V().has("name", "jupiter").toSet()

... 并得到 Set<Element> . 我想要的是 Iterable<Vertex>相反(或 Iterable 的子类)。从遍历声明来看,结果只能由顶点组成,因为 .V()运算符(operator)。由于 Java 类型系统,它被不必要地概括为 Element .有没有办法输入过滤器?我想做的是沿着这些思路......

Set<Vertex> vertices = graph.V().has("name", "jupiter").cast(Vertex.class).toSet();

...但是没有 cast运算符(operator)。最终,我想要这样做的原因是因为我需要在 foreach 循环中迭代生成的顶点,并且必须将循环变量向下转换为循环中的第一条语句,这很烦人。

我对其他选择持开放态度,我对 Gremlin 3 还是个新手,可能还有很多我还不知道的事情。

最佳答案

针对 Tinkerpop3 M6/titan0.9 M1,以下应该有效:

Set<Vertex> vertices = graph.V().<Vertex>has("name", "jupiter").toSet();

大多数 M6 类型问题都可以通过类似的方式解决(参数化按预期类型生成元素的方法)。

关于java - Gremlin 3 中的类型过滤步骤?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30485570/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com