This question already has an answer here:
Can anybody explain to me why does it give null pointer
public void earliestTimeBfs(HashMap times) { this.times = new HashMap<>();
Vertex<V, E> vOrig = this.graph.getVertex(0);
Deque<Vertex<V, E>> qaux = new LinkedList<>();
qaux.add(vOrig);
while (!qaux.isEmpty()) {
vOrig = qaux.remove();
for (Object edge : this.graph.outgoingEdges(vOrig)) {
Vertex<V, E> vAdj = this.graph.opposite(vOrig, (Edge) edge);
Integer[] aux = times.get(((Activity) this.graph.getVertex(vAdj.getElement()).getElement()).getId());
if (aux == null) {
Integer[] arrayaux = new Integer[5];
arrayaux[0] = times.get(((Activity) this.graph.getVertex(vOrig.getElement()).getElement()).getId())[1];
arrayaux[1] = arrayaux[0] + ((Activity) this.graph.getVertex(vAdj.getElement()).getElement()).getDuration();
times.put(((Activity) graph.getVertex(vAdj.getElement()).getElement()).getId(), arrayaux);
} else if (times.get(((Activity) graph.getVertex(vOrig).getElement()).getId())[1] > aux[0]) {
aux[0] = times.get(((Activity) graph.getVertex(vOrig.getElement()).getElement()).getId())[1];
aux[1] = aux[0] + ((Activity) graph.getVertex(vAdj.getElement()).getElement()).getDuration();
times.put(((Activity) graph.getVertex(vAdj).getElement()).getId(), aux);
}
qaux.add(vAdj);
}
}
}
So the problem is that it gives nullPointerException when i do arrayaux[0] = times.get(((Activity) this.graph.getVertex(vOrig.getElement()).getElement()).getId())[1]; can anybody help me? thank you!
Aucun commentaire:
Enregistrer un commentaire