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