Ich möchte prüfen, ob das Hinzufügen eines Wertes zu einem doppelten Wert die doppelten Grenzen überschreitet oder nicht. Ich versuchte dies:Scala: Wie überprüft man, ob ein Double Value Crossing Double limits?
object Hello {
def main(args: Array[String]): Unit = {
var t = Double.MaxValue
var t2 = t+100000000
if(t2 > 0) {
println("t2 > 0: " + t2)
} else
println("t2 <= 0: " + t2)
}
}
Der Ausgang ich erhalte, ist
t2 > 0: 1.7976931348623157E308
Was ich will, ist eigentlich Milliarden von Werten zu summieren und prüfen Sie, ob die laufende Summe jederzeit überläuft.
Können Sie den ** ersten Wert ** von Double.MaxValue subtrahieren und prüfen, ob dieser größer als ** zweiter Wert ** ist? – arpanchaudhury