1

我正在迭代从 jgrapht 有向简单图返回的一组边。

 Set<DefaultEdge> edges = graph.edgeSet();

    for (DefaultEdge edge : edges) {

       System.out.println(edge.getSource());
       System.out.println(edge.getTarget());

}

edgeSet方法返回正确数量的边,但源和目标始终为空。

4

1 回答 1

3

当我实例化我的图并将其传递给边缘类时:

DirectedGraph graph = new SimpleDirectedGraph(DefaultEdge.class);

Netbeans 为我提供了要导入的DefaultEdge.class文件的选项,我选错了。我使用了org.jgraph库而不是org.jgrapht

如果您使用的是 DefaultEdge 类,请确保您使用的是来自 jgrapht 的类。

import org.jgrapht.graph.DefaultEdge;

否则将不会出现编译器错误,并且在尝试检索边缘数据之前一切似乎都可以正常工作。

于 2014-11-06T19:00:07.383 回答