Java: double INF (Infinity) zuweisen

Warum Debian und/oder eine seiner Spielarten? Was muss ich vorher wissen? Wo geht es nach der Installation weiter?
Antworten
inne
Beiträge: 3281
Registriert: 29.06.2013 17:32:10
Lizenz eigener Beiträge: GNU General Public License
Kontaktdaten:

Java: double INF (Infinity) zuweisen

Beitrag von inne » 03.04.2019 20:27:44

Hallo,

welchen Wert muss ich einem double zuweisen damit Double.isInifiny(…) == true ist und wie mach ich das Syntaktisch?

inne
Beiträge: 3281
Registriert: 29.06.2013 17:32:10
Lizenz eigener Beiträge: GNU General Public License
Kontaktdaten:

Re: Java: double INF (Infinity) zuweisen

Beitrag von inne » 03.04.2019 20:30:58

Weiter gefragt: Was macht den Unterschied von Double.POSITIVE_INFINITY und Double.NEGATIVE_INFINITY aus, einfach nur wie bei Brechungen mit * -1?

Benutzeravatar
Lord_Carlos
Beiträge: 5578
Registriert: 30.04.2006 17:58:52
Lizenz eigener Beiträge: GNU Free Documentation License
Wohnort: Dänemark

Re: Java: double INF (Infinity) zuweisen

Beitrag von Lord_Carlos » 04.04.2019 08:53:00

Bei den meisten IDEs kannst du einfach auf Double.isInfinite() klicken um den code zu folgen:

Code: Alles auswählen

public static boolean isInfinite(double v) {
        return (v == POSITIVE_INFINITY) || (v == NEGATIVE_INFINITY);
    }
Und die variablen:

Code: Alles auswählen

    /**
     * A constant holding the positive infinity of type
     * {@code double}. It is equal to the value returned by
     * {@code Double.longBitsToDouble(0x7ff0000000000000L)}.
     */
     public static final double POSITIVE_INFINITY = 1.0 / 0.0;
     public static final double NEGATIVE_INFINITY = -1.0 / 0.0;

Code: Alles auswählen

    @Test
    public void foo() {
        System.out.println(Double.isInfinite(2d));
        double myLargeDouble = Double.longBitsToDouble(0x7ff0000000000000L);
        System.out.println(Double.isInfinite(myLargeDouble));
        System.out.println(Double.isInfinite(1.0 / 0.0));
    }
Ergibt:
false
true
true

Code: Alles auswählen

╔═╗┬ ┬┌─┐┌┬┐┌─┐┌┬┐╔╦╗
╚═╗└┬┘└─┐ │ ├┤ │││ ║║
╚═╝ ┴ └─┘ ┴ └─┘┴ ┴═╩╝ rockt das Forum!

Antworten