Kann mir jemand erklären wie genau dieser Java Integer to binary Converter funktioniert?


21.12.2022, 05:00

Also ich schätze einfach mal

Durch die while schleife wird der Code darin ja immer wieder ausgeführt bis der eingegeben Integer bei 0 ist. Aber was genau passiert bei " binary = (num%2) + binary.

Ich weiß wie ein Modulo operant funtkioniert, aber blicke trotzdem nicht durch.

2 Antworten

Vom Fragesteller als hilfreich ausgezeichnet

Genau, die Schleife läuft einfach so lange, bis num 0 ist. Dabei ist wichtig zu wissen, dass bei einer Integer-Division einfach die Nachkommastellen abgeschnitten werden. Also 1/2 ist nicht 0,5 sondern 0.

Das "(num%2)" berechnet den Rest, der bei num/2 übrig bleibt. Z.B. 5/2 = 2 Rest 1. Und die 1 wird dann mit "+binary" einfach vorne an den bestehenden String angehängt.

num /= 2 heißt einfach, dass num halbiert wird (aber eben als Integer-Division, also ohne Nachkommastellen)

Das ist eine einfache String-Addition.

Bei jedem Durchlauf wird hier entweder 0 oder 1 auf der linken Seite der bereits vorhandenen Zeichenkette ergänzt.