Boolean nach Ganzzahl konvertieren

Der primitive Typ boolean lässt sich nicht über eine Typumwandlung in einen anderen primitiven Typ konvertieren. Doch in der Praxis kommt es vor, dass true auf 1 und false auf 0 abgebildet werden muss; der übliche Weg ist:

int val = aBoolean ? 1 : 0;

Exotischer ist:

int val = Boolean.compare( aBoolean, false );

Noch exotischer folgendes:

int val = 1 & Boolean.hashCode( true ) >> 1;

Ähnliche Beiträge

Veröffentlicht in Insel

2 Gedanken zu “Boolean nach Ganzzahl konvertieren

  1. Der letzte Ausdruck enthält keine Variable. Müsste es nicht heißen:
    int val = 1 & Boolean.hashCode( aBoolean ) >> 1;

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert