我正在迭代从jgrapht导向的简单图形返回的一组边。
Set<DefaultEdge> edges = graph.edgeSet();
for (DefaultEdge edge : edges) {
System.out.println(edge.getSource());
System.out.println(edge.getTarget());
}
edgeSet
方法返回正确的边数,但源和目标始终为null。
答案 0 :(得分:3)
当我实例化我的图表并将其传递给边缘类时:
DirectedGraph graph = new SimpleDirectedGraph(DefaultEdge.class);
Netbeans给了我选择导入 DefaultEdge.class 文件的选项,我选错了。我使用 org.jgraph 库而不是 org.jgrapht 。
如果您使用的是DefaultEdge类,请确保使用的是jgrapht。
import org.jgrapht.graph.DefaultEdge;
否则将没有编译器错误,并且在尝试检索边缘数据之前,一切似乎都能正常工作。