首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >不能将JGraphT转换为org.jgrapht.graph.DefaultWeightedEdge

不能将JGraphT转换为org.jgrapht.graph.DefaultWeightedEdge
EN

Stack Overflow用户
提问于 2011-09-25 04:40:52
回答 1查看 1.1K关注 0票数 0

我是new Java,正在使用jGraphT创建一个SimpleDirectedWeightedGraph。在创建边并将其添加到图中后,尝试在边上设置权重时出现此错误:

代码语言:javascript
复制
Exception in thread "main" java.lang.ClassCastException: ObservationsDAG$ObservationsDAGEdge cannot be cast to org.jgrapht.graph.DefaultWeightedEdge
at org.jgrapht.graph.AbstractBaseGraph.setEdgeWeight(Unknown Source)

我假设我需要在这里的ObservationsDAGEdge类中做一些事情,但是从JGraphT文档来看,我被卡住了。我的边缘类需要权重实例变量吗?我需要提供getEdgeWeight()和setEdgeWeight()吗?

EN

回答 1

Stack Overflow用户

发布于 2011-09-25 14:36:55

所以,我想通了。我首先尝试扩展DefaultDirectedEdge,但后来getEdgeTarget()停止工作--可能是因为我需要实现开始/结束顶点。

在阅读了代码之后,我尝试了子类化SimpleDirectedWeightedGraph,覆盖了setEdgeWeight和getEdgeWeight,并为我的边缘类提供了一个权重实例变量。

这终于像预期的那样工作了。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/7541785

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档