Ich denke, es ist ziemlich selbsterklärend aus dem Code. Offensichtlich überprüfe ich nicht immer dasselbe, es sind nur Beispielszahlen, um mein Problem zu erklären. Ich vermute, es handelt sich um Überlauf/Fehler, aber ich weiß nicht, wie ich damit umgehen soll.
double d = (1 / (684985+157781));
System.out.println(d); // gibt 0.0 zurück
System.out.println(Math.log(d)); // gibt -Infinity zurück.