我可以从这个 GraphTraversal 中得到一个顶点而不是一个元素吗?

Can I get a Vertex instead of an Element out of this GraphTraversal?

我正在对参考 TinkerGraph 实现使用 Tinkerpop3 Gremlin

我正在尝试 .next() Vertex 出这个遍历:

graph.V().has(T.label, "link").has("url", url).next();

不幸的是,我只能从 next() 得到一个 Element。当我将 next() 的输出分配给 Vertex 时,我得到:

error: incompatible types: Element cannot be converted to Vertex

如何获得Vertex

我看过 the docs 并看到 V() returns GraphTraversal<Vertex,Vertex>has() 步骤已签名 default <E2 extends Element> GraphTraversal<S,E2>,我认为这会保留 GraphTraveral<Vertex, Vertex>next() 仅产生 Element。不知道下一步该做什么。

谢谢。

嗯 - 你总是可以这样做:

Vertex v = g.V().has(T.label, "link").<Vertex>has("name", url).next();

然后简单地明确输入最后一步。