A<->B
JGraphT 0.8.3 で単純な無向ラベルなし (エッジはラベルなし) グラフを作成したい:
import org.jgrapht.graph.DefaultEdge;
import org.jgrapht.graph.SimpleGraph;
class A {
public static void main(String[] args) {
SimpleGraph<String, String> sg =
new SimpleGraph<String, String>(String.class);
sg.addVertex("A");
sg.addVertex("B");
sg.addEdge("A", "B");
System.out.println("edges of A: " + sg.edgesOf("A"));
System.out.println("edges of B: " + sg.edgesOf("B"));
}
}
私はこの出力を得る:
$ java -cp 'jgrapht-jdk1.6.jar:.' A
edges of A: []
edges of B: []
頂点A
とB
空のエッジのセットはなぜですか? また、forのクラスパラメータは何SimpleGraph
ですか? エッジの種類のようですが、ここのエッジにはラベルが付いていないので、問題ないでしょうか? すべてのグラフ クラスは、エッジのクラス ( edgeClass
) をパラメーターとして取るようです。ドキュメントのどこに記載されているかわかりませんedgeClass
。
addEdge
エッジにラベルを付けると(行を に変更するとsg.addEdge("A", "B", "an_edge");
)、機能することがわかりました...しかし、エッジにラベルを付けたくありません...
$ java -cp 'jgrapht-jdk1.6.jar:.' A
edges of A: [an_edge]
edges of B: [an_edge]