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;
2 Kommentare
Christian Ullenboom ·
Ja, ändere ich. Danke.
Jens ·
Der letzte Ausdruck enthält keine Variable. Müsste es nicht heißen: int val = 1 & Boolean.hashCode( aBoolean ) >> 1;
Die bisherigen Kommentare wurden aus WordPress übernommen. Neue Kommentare sind derzeit geschlossen.