所以我在如何将节点遍历转换为哈希集时遇到了麻烦。
GraphTraversal<vertex, vertex>nodeTraversal = this.central.V().has(nodeid).in("node").values(nodeId);
到目前为止,我已经:
GraphTraverl<vertex, vertex>nodeTraversal
返回 ids 的值。然后我想通过执行 .toSet()
将其转换为集合,但得到一个 cannot convert set<Object> to set<String>
。我尝试像tinkerpop文档一样添加一个.join(',')
,但运气不好。
有人知道为什么吗?
我认为这只是正确使用仿制药的问题。您已使用
nodeTraversal
创建了 <Vertex, Vertex>
,但从技术上讲,这不是您要返回的内容。来自 nodeTraversal
(即第二个 Vertex
通用定义)的传出对象不是 Vertex
,而是赋予 values()
的属性的数据类型。我们假设它是一个String
。你的代码看起来像:
GraphTraversal<Vertex, String> nodeTraversal = g.V().has("x").in("node").values("y");
Set<String> ids = nodeTraversal.toSet();