一連の頂点を反復処理しようとしています。頂点は、私が作成したカスタム クラスです。頂点を反復処理する私の試みは次のとおりです。
bCentral2 = new BetweennessCentrality<MyVertex, MyEdge>(g2);
for(MyVertex v : g2.getVertices())
{
v.setCentrality(bCentral2.getVertexScore(v));
}
私が得るエラーは行からのものです:MyVertex v : g2.getVertices()
そしてメッセージは次のとおりです:
incompatible types
required: graphvisualization.MyVertex
found: java.lang.Object
だから、にキャストしようとしたArraryList<MyVertex>
ところ、次のエラーメッセージが表示されました。
Exception in thread "main" java.lang.ClassCastException: java.util.Collections$UnmodifiableCollection cannot be cast to java.util.ArrayList
- 一連の頂点を反復処理するにはどうすればよいですか?
- 最終的な目標は、各頂点の中心性を設定することです
以下は、MyVertex クラスの私のコードです。
public class MyVertex
{
int vID; //id for this vertex
double centrality; //centrality measure for this vertex
public MyVertex(int id)
{
this.vID = id;
this.centrality=0;
}
public double getCentrality()
{
return this.centrality;
}
public void setCentrality(double centrality)
{
this.centrality = centrality;
}
public String toString()
{
return "v"+vID;
}
}