Follow along with the video below to see how to install our site as a web app on your home screen.
Anmerkung: This feature may not be available in some browsers.
true wird intern so ziemlich immer als 1 und false als 0 abgebildet, um das logische UND als bitweises UND und das logische ODER als bitweises ODER zu verwenden.Kann man sagen das true=1 und false=0 gilt, dann wäre true&&false=1&&0=0=false nach Logik-Gatter.
Interessant...das wußte ich auch noch nicht. Ich wußte, daß so ziemlich alles in der JVM als int behandelt wird (auch z.B. Bytes), aber auch die booleans...prima, wieder was gelernt. 🙂Vielleicht kurz noch eine Zusatzinformation: In der Quellcodesprache-unabhängigen Bytecode-Sprache der JVM wird für das Produzieren von true als Literal die 1 (int) und zum Produzieren von false als Literal die 0 (int) verwendet.
Deswegen sagte ich auch: "Und ich denke mal nicht, dass der C-Compiler mehrere gemeinsam genutzte Booleans in einem byte packed und bei jedem Zugriff darauf per Bitshifting wieder unpacked."Allerdings arbeitet man in C auch sehr häufig mit Masken und daher im Endeffekt sehr wohl mit einzelnen Bits.
In Java ist die Zuweisung true=1 oder false=0 sinnlos. Löse dich von dieser Vorstellung, je schneller desto besser. Sie ist nicht hilfreich, und neigt nur dazu dich zu verwirren.
Die Zuweisung "True = 1 = Spannung ein" ist eine reine Definitionssache. Die boolsche Algebra kennt keine numerischen Ausdrücke 0 oder 1 oder andere.
0 1
0 0 0
1 0 1
0 1
0 0 1
1 1 1