似乎正在获得NullPointerException
线程内主线程,特别是在放置节点和调用addEdge
方法的那一行上。
private TreeMap<Node, Set<Node>> nodeToNeighbours;
在主要
Graph test1 = new Graph();
Node n1 = new Node(1);
Node n2 = new Node(2);
test1.addEdges(n1, n2);
addEdges类
public void addEdge(Node node1, Node node2) {
nodeToNeighbours.put(node2, new TreeSet<Node>());
nodeToNeighbours.put(node1, new TreeSet<Node>());
}
您只是在声明地图,而不是在此处初始化地图:
private TreeMap<Node, Set<Node>> nodeToNeighbours;
因此nodeToNeighbours
为null,因此尝试向其中添加某些内容会导致NullPointerException
。您可以按照此处提到的进行初始化:
nodeToNeighbours = new TreeMap<Node, Set<Node>>();
如果您使用的是Java 7或更高版本,则如下所示:
nodeToNeighbours = new TreeMap<>();
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句