Diverse Exceptions - Troubleshooting

huckleberry

Bekanntes Mitglied
Hallo Forum,

Adjazenzliste von hier: http://www.java-forum.org/java-basics-anfaenger-themen/95061-adjazenzliste-datenstruktur.html

Java:
TreeMap<Double, SpecialObject>  myLocalVIR; // als Parameter in Methode übergeben
Iterator<SpecialObject> itLocalVIR = myLocalVIR.values().iterator(); //Iterator
SpecialObject vpData = null;
//Mehr als 2 Knoten?		
if (myLocalVIR.size() > 1){
	log.info("Nodecount: 2 or more nodes.");
	MeineAdjazList tmpNode = new MeineAdjazList();
	vpData = myLocalVIR.firstEntry().getValue();
	if (vpData == null) vpData=itLocalVIR.next();
	while(!myLocalVIR.isEmpty()){
		// Put last/first (vpData) as FromNode
		tmpNode.setFromNode(vpData);
		// calc nearest next Node and their distances
		tmpNode.setToNode(calcRest(tmpNode.fromNode, myLocalVIR));
		tmpNode.setDistanceBetween(tmpNode.calcDistanceBetween());
		// remove that node from myLocalVIR
		myLocalVIR.remove(this.getKey(vpData, myLocalVIR));
		// add toNode and save for next round
		myReturnVIR.add(tmpNode);
		vpData = tmpNode.toNode; // tmpNode.fromNode = tmpNode.toNode

Ich habe hier noch kleinere Problemchen, welche ich auch noch nicht wirklich verstehe:
  1. -- NullPointerException (Zeilen 8&9 oben). Mit if (myLocalVIR.size() > 1) führe ich Nachfolgenden Code doch nur aus, wenn ich mehr als 2 Knoten habe? Und wenn dem so ist, nöcht eich zB die nächste Value aus myLocalVIR holen. Meine Lösung ist doppelt gemoppelt, wobei ich anders eine NullPointerException bekomme ???:L
  2. -- NullPointerException 2 (Zeile 15 oben). Wie man unten sieht, haben meine Adjazenzlisten die Struktur MeineAdjazList(SpecialObject fromNode, double distance, SpecialObject toNode). Anfangs ist meine tmpNode leer und dann wird fromNode gesetzt und dann toNode berechnet. Aus diesen beiden wird dann deren Abstand zueinander berechnet, womit dann alle 3 Werte komplett wären.. Wird die Exceptoin geworfen, weil ich den mittleren Wert aus den beiden anderen berechne?
  3. -- NullPointerException 3 (Zeile 7 unten). Er setzt den mittleren Wert und gibt returnt es gleichzeitig zurück, da ich es beispielsweise für weitere Berechnungen brauchen könnte, und mir dann so nochmaliges auslesen aus tmpNode.getDistance() erspare..

Java:
public class MeineAdjazList {
	protected SpecialObject fromNode;
	protected double distanceBetween;
	protected SpecialObject toNode;
//... 
	public double calcDistanceBetween() {
		return this.distanceBetween = calcDistance(this.fromNode.getPosition(), this.toNode.getPosition());
	}

Vielen Dank für jegliche Hinweise und mfg Huck
 

eRaaaa

Top Contributor
In Zeile 1 deklarierst du doch myLocalVIR nur
Java:
TreeMap<Double, SpecialObject>  myLocalVIR;

...erstellst aber garkeine TreeMap ? (new TreeMap()....) daher ist myLocalVIR halt null..und somit krachts auch direkt in Zeile2, da du eine Methode versuchst aufzurufen...
 

huckleberry

Bekanntes Mitglied
In Zeile 1 deklarierst du doch myLocalVIR nur
Sorry habe es etwas unglücklich kommentiert. Die TreeMap wird in dieser Methode als Parameter übergeben. Das wollte ich damit ausdrücken, deswegen habe ich so nochmal stehen gehabt..
Man kann davon ausgehen, dass diese existiert und entsprechend gefüllt ist.

Hier noch mal die gesamt Klasse:
Java:
public class MeineAdjazList {

	protected SpecialObject fromNode;
	protected double distanceBetween;
	protected SpecialObject toNode;
	
	public DHGroupCalc() {
		super();
	}

	public DHGroupCalc(SpecialObject fromNode, SpecialObject toNode) {
		super();
		this.fromNode = fromNode;
		this.toNode = toNode;
	}

	public DHGroupCalc(SpecialObject fromNode, double distanceBetween, SpecialObject toNode) {
		super();
		this.fromNode = fromNode;
		this.distanceBetween = distanceBetween;
		this.toNode = toNode;
	}


	public double calcDistanceBetween() {
		this.setDistanceBetween(calculateDistance(this.fromNode.getPosition(), this.toNode.getPosition()));
		return this.getDistanceBetween();
	}

	/**
	 * @return the distanceBetween
	 */
	public double getDistanceBetween() {
		return this.distanceBetween;
	}
	
	/**
	 * @param distanceBetween the distanceBetween to set
	 */
	public void setDistanceBetween(double distanceBetween) {
		this.distanceBetween = distanceBetween;
	}
	
	/**
	 * @return the fromNode
	 */
	public SpecialObject getFromNode() {
		return this.fromNode;
	}
	
	/**
	 * @param fromNode the fromNode to set
	 */
	public void setFromNode(SpecialObject fromNode) {
		this.fromNode = fromNode;
	}
	
	/**
	 * @return the toNode
	 */
	public SpecialObject getToNode() {
		return this.toNode;
	}
	
	/**
	 * @param toNode the toNode to set
	 */
	public void setToNode(SpecialObject toNode) {
		this.toNode = toNode;
	}
}

Ausserdem habe ich mit Eclipse alle getter und setter machen lassen, wobei
Java:
    public SpecialObject getToNode() {
        return toNode;
    }
ich alle mit "this." erweitert habe.. !?!?!? Denkfehler bei mir?
Java:
    public SpecialObject getToNode() {
        return this.toNode;
    }
 
Zuletzt bearbeitet:

huckleberry

Bekanntes Mitglied
Java:
/**
 * @param myLocalVIR
 */
public void printRing(ArrayList<MeineAdjazList> myLocalVIR) {
	MeineAdjazList adjl;
	for(int i=0; !myLocalVIR.isEmpty(); i++){
		adjl = myLocalVIR.get(i);
		log.info("From: "+adjl.fromNode.getId()+" is "+adjl.distanceBetween+" m away to "+adjl.toNode.getId());
		myLocalVIR.remove(i);
	}
} // end printKeyRing

NullPointerException für die for-Schleife in Zeile 6 :(
Ich nehme mal an, dass es an !myLocalVIR.isEmpty() liegT?
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
S Diverse Fragen vor Schulaufgabe ;) Java Basics - Anfänger-Themen 4
K Diverse Fragen zum Fehlerlogging Java Basics - Anfänger-Themen 9
U Diverse Fragen (Internethandel erstellen) Java Basics - Anfänger-Themen 30
K Diverse Bugs in einem Snake Spiel Java Basics - Anfänger-Themen 4
O diverse Fragen Java Basics - Anfänger-Themen 13
J Diverse Frag zu Vererbung innerhalb von Java Java Basics - Anfänger-Themen 6
H Diverse Dinge: Unstabile Grafik, Druckt Grafik nicht,Tooltipp verschwindet hinter Grafik Java Basics - Anfänger-Themen 3
J diverse Begriff definieren Java Basics - Anfänger-Themen 6
M Test auf Exceptions schreiben Java Basics - Anfänger-Themen 11
berserkerdq2 Habe zwei exceptions, welche ist ein Kommunikationsfehler und welche ein Ausgabefehler? Java Basics - Anfänger-Themen 4
julian112 Input/Output .gz bzw. .txt Datei Einlesen und Umgang mit Exceptions Java Basics - Anfänger-Themen 1
C Exceptions identifizieren Java Basics - Anfänger-Themen 5
A Exceptions mit objektreferenzen Java Basics - Anfänger-Themen 4
A Exceptions und methods Java Basics - Anfänger-Themen 2
A Cannot find symbol bei exceptions Java Basics - Anfänger-Themen 2
A Exceptions und Packages Java Basics - Anfänger-Themen 6
B JUnit / Exceptions/ try-catch Java Basics - Anfänger-Themen 6
X Exceptions Benutzereingaben Java Basics - Anfänger-Themen 4
F Exceptions in Interfaces Java Basics - Anfänger-Themen 4
F Mehrere Exceptions in einem Catch-Block abfangen Java Basics - Anfänger-Themen 12
L Exceptions und Konten Java Basics - Anfänger-Themen 21
D Frage zu Exceptions Java Basics - Anfänger-Themen 8
I Wie programmiert man Exceptions? Java Basics - Anfänger-Themen 4
N Unterschied zwischen Checked und Unchecked Exceptions Java Basics - Anfänger-Themen 12
C Erste Schritte Exceptions nicht verstanden Java Basics - Anfänger-Themen 2
J Fragen zu Exceptions Java Basics - Anfänger-Themen 24
T Exceptions - ausgeführte Zeilen Java Basics - Anfänger-Themen 4
J Exceptions Java Basics - Anfänger-Themen 69
C Exceptions Java Basics - Anfänger-Themen 8
C Exceptions Java Basics - Anfänger-Themen 6
A ArrayQueue mit Exceptions und Vererbung Java Basics - Anfänger-Themen 3
F Exceptions Java Basics - Anfänger-Themen 6
J Frage zum Thema Exceptions (Try/Catch) Java Basics - Anfänger-Themen 3
M "Exceptions abfragen" Java Basics - Anfänger-Themen 6
Farbenfroh Exceptions Anfänger - Finde Fehler nicht Java Basics - Anfänger-Themen 7
Z Catch & Exceptions Java Basics - Anfänger-Themen 4
N Compiler-Fehler Drei Exceptions in GUIHack für Dreiecke auf MoveButtons Java Basics - Anfänger-Themen 36
V Welche Exceptions müssen importiert werden? Java Basics - Anfänger-Themen 3
S Exceptions Java Basics - Anfänger-Themen 7
M Vererbung Problem Vererbung/Exceptions Java Basics - Anfänger-Themen 9
S Verschachtelte Exceptions - Übersicht verbessern Java Basics - Anfänger-Themen 2
J Eclipse Exceptions Java Basics - Anfänger-Themen 2
K Schleifen und Exceptions Java Basics - Anfänger-Themen 8
K Exceptions auslagern Java Basics - Anfänger-Themen 15
R NullPointer Exceptions Java Basics - Anfänger-Themen 3
F Erste Schritte Übung zu Exceptions Java Basics - Anfänger-Themen 24
R Exceptions (try/catch) Java Basics - Anfänger-Themen 63
H Int Exceptions Java Basics - Anfänger-Themen 12
M Exceptions per throws oder try Java Basics - Anfänger-Themen 4
M Compiler-Fehler Queue als ArrayList mit Exceptions Java Basics - Anfänger-Themen 3
T Exceptions in einer Klasse Java Basics - Anfänger-Themen 3
B Eigene Exceptions entwerfen Java Basics - Anfänger-Themen 3
H Methoden Überflüssige Exceptions Java Basics - Anfänger-Themen 20
C Exceptions Java Basics - Anfänger-Themen 14
1 While Schleife Exceptions Java Basics - Anfänger-Themen 6
I Erste Schritte Eigene Fehlermeldungen bei Exceptions Java Basics - Anfänger-Themen 19
D Frage zu Exceptions Java Basics - Anfänger-Themen 12
M Compiler-Fehler Exceptions lieber throwen oder direkt catchen? Java Basics - Anfänger-Themen 8
T Exceptions Java Basics - Anfänger-Themen 19
B Wie finde ich Exceptions? Java Basics - Anfänger-Themen 19
Dit_ Input/Output Alle Exceptions protokollieren Java Basics - Anfänger-Themen 9
T Exceptions Java Basics - Anfänger-Themen 12
J Standard Exceptions abfangen Java Basics - Anfänger-Themen 5
F Exceptions werfen oder catchen?? Java Basics - Anfänger-Themen 14
D Exceptions - Ausnahmebehandlung Java Basics - Anfänger-Themen 19
D Frage zu Exceptions und der import Anweisung Java Basics - Anfänger-Themen 12
J Paar Fragen zu Exceptions Java Basics - Anfänger-Themen 16
G Verständnisproblem: Exceptions Java Basics - Anfänger-Themen 17
S Exceptions bei push/pop in Stack Java Basics - Anfänger-Themen 8
C Exceptions beim Beenden Java Basics - Anfänger-Themen 2
C TimerTask und Exceptions Java Basics - Anfänger-Themen 5
E Klasse öffnen, mehrere Exceptions Java Basics - Anfänger-Themen 9
C Exceptions Java Basics - Anfänger-Themen 7
G 2 Exceptions in einer Methode Java Basics - Anfänger-Themen 3
firefexx Exceptions werfen Java Basics - Anfänger-Themen 5
0 Exceptions mehrfach fangbar? Java Basics - Anfänger-Themen 4
O Exceptions Java Basics - Anfänger-Themen 3
K Sinn eigener Exceptions Java Basics - Anfänger-Themen 11
J exceptions Java Basics - Anfänger-Themen 8
sc0p InterruptedExceptions und Exceptions - in Einem! Java Basics - Anfänger-Themen 5
M Frage zu Exceptions Java Basics - Anfänger-Themen 19
M Fragen zu Exceptions Java Basics - Anfänger-Themen 3
A Exception Verständnisfrage: Exceptions während, einer Statischenzuweisung abfangen Java Basics - Anfänger-Themen 10
D Exceptions werfen + beenden Java Basics - Anfänger-Themen 12
M Exceptions aus interface-Methoden Java Basics - Anfänger-Themen 2
S File.renameTo und Exceptions / Fehlermeldung Java Basics - Anfänger-Themen 2
B Exceptions in Liste sammeln? Java Basics - Anfänger-Themen 5
O Eigene Exceptions Java Basics - Anfänger-Themen 11
O "restliche" Exceptions fangen Java Basics - Anfänger-Themen 8
H [Stil] Exceptions in der Klasse behandeln oder throwen? Java Basics - Anfänger-Themen 62
T Problem beim Werfen und Fangen von Exceptions Java Basics - Anfänger-Themen 2
V Aktivitätsdiagramm / Exceptions Java Basics - Anfänger-Themen 5
V Exceptions Java Basics - Anfänger-Themen 6
K Frage zu Exceptions -> Logging Java Basics - Anfänger-Themen 6
M Eigene Fehlermeldung bei Exceptions? Java Basics - Anfänger-Themen 12
R JDom Exceptions Java Basics - Anfänger-Themen 4
R Datei einlesen mit Exceptions Java Basics - Anfänger-Themen 2
Daniel_L Verwendung von try und catch bei exceptions Java Basics - Anfänger-Themen 7
C Reflection Exceptions behandeln Java Basics - Anfänger-Themen 6
G Exceptions - spiegeln wir da nicht einen Spiegel im Spiegel? Java Basics - Anfänger-Themen 10

Ähnliche Java Themen

Neue Themen


Oben