我正在尝试为Gephi编写插件并收到以下错误消息:
java.lang.ClassCastException: org.gephi.graph.impl.GraphStore$NodeIterableWrapper cannot be cast to org.gephi.graph.api.Node at org.............execute(.....java:92)
发生错误的代码:
Node[] nodes = graph.getNodes().toArray();
for (Node n: nodes){
.....
List<Node> neighborNodes = new LinkedList<Node>();
for(Node m: nodes){
NodeIterable iter = graph.getNeighbors(m);
neighborNodes.add((Node) iter);
最后一行导致错误。是否可以通过NodeIterable
将邻居作为节点插入列表neighborNodes
而不进行此演员?我是编写Java插件的新手。
答案 0 :(得分:0)
根据this javadoc,NodeIterable
是Iterable
的{{1}}。
所以你可能应该使用一个循环:
Node
或NodeIterable iter = graph.getNeighbors(m);
for (Node n: iter) {
neighborNodes.add(n);
}
和toCollection
:
addAll