首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用JUNG2将节点添加到集合中

使用JUNG2将节点添加到集合中
EN

Stack Overflow用户
提问于 2012-08-22 08:36:34
回答 1查看 234关注 0票数 0

我正在尝试添加一个类似于这个( C.add(n)))的节点

我有个问题:

java.util.Collections$UnmodifiableCollection.add(Unknown源代码中线程“主”java.lang.UnsupportedOperationException中的异常))

不可执行代码示例:

代码语言:javascript
复制
UndirectedSparseMultigraph<MyNode, MyLink> g = getgraph1();
Collection<MyNode> c = null ;
for( MyNode n : g.getVertices() ){
  if( n.id == 3 ){
    c = g.getNeighbors(n);
    System.out.println(C); C.add(n); }
}
EN

回答 1

Stack Overflow用户

发布于 2012-08-22 15:24:37

您正在尝试使用UndirectedSparseMultigraph.getNeighbors(V vertex)获取Vertices --此方法返回不可修改的集合

代码语言:javascript
复制
  public Collection<V> getNeighbors(V vertex) {
  ...
    return Collections.unmodifiableCollection(neighbors);
  }

也一样

代码语言:javascript
复制
  public Collection<V> getVertices()
  {
    return Collections.unmodifiableCollection(vertex_maps.keySet());
  }

代码语言:javascript
复制
  public Collection<E> getEdges()
  {
    Collection<E> edges = new ArrayList<E>(directed_edges.keySet());
    edges.addAll(undirected_edges.keySet());
    return Collections.unmodifiableCollection(edges);
  }

基于您的注释,它说明您正在尝试将节点n添加到其neighbors集合中。如果是这样的话,让你试着替换一下

( C.add(n)))

使用

g.addEdge(new MyLink(), n, n);

若要添加自交,请执行以下操作。

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

https://stackoverflow.com/questions/12069243

复制
相关文章

相似问题

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