2010-03-05 10 views

Antwort

22

Angenommen, du meinst die größte negative, nicht-unendliche Anzahl, klingt richtig, weil, in 64-bit IEEE 754 floating point Gleitkommazahlen (das, was Java uses for doubles ist):

  • Die Größe der Zahl wird in einem Teil der gespeicherten die binäre rep
  • das Vorzeichen der Zahl wird in einem separaten Teil des binären rep

Daher gespeichert: die größte die darstellbare negative Zahl wäre die gleiche wie die größte darstellbare positive Zahl, wobei das Vorzeichenbit umgedreht wurde, um eine negative Zahl anzuzeigen.

+1

Also verwendet Java kein Zweierkomplement für Fließkommazahlen? –

+0

Warum ist (-Double.MAX_VALUE - 1) nicht gleich negativ unendlich? –

+0

Entschuldigung, meine Meinung ist auf Ganzzahlen ... wie gesagt wurde, verwendet Fließkomma nicht zwei Komplimente. –

15

Nein, es ist Double.NEGATIVE_INFINITY.

+0

Ist es ein "gültiger" Wert? –

+0

Wie wäre es mit coment von RHSeegar? –

+2

Ist es ein gültiges Double? Ja, es ist ein wohldefinierter IEEE 754-Doppelwert. Double.NEGATIVE_INFINITY ist kleiner als -Double.MAX_VALUE und ist definitionsgemäß <= alle Doubles (außer NaN, die keine Reihenfolge hat). Daher ist es das negativste Doppel, was die OP-Frage war. –

Verwandte Themen