Was ist der einfachste Weg in Java, um die binäre Darstellung einer ganzen Zahl als eine Binärzahl mit einer festen Anzahl von Bits zu erhalten (Zum Beispiel wenn ich 3 konvertieren will mit 5 Bits wäre das Ergebnis 00011). In Matlab kann ich einfach die Anzahl der Bits als Argument angeben.Konvertieren eines int in ein binäres mit einer festen Anzahl von Bits
Antwort
Um n zu numbOfBits von Bits konvertieren:
public static String intToBinary (int n, int numOfBits) {
String binary = "";
for(int i = 0; i < numOfBits; ++i, n/=2) {
switch (n % 2) {
case 0:
binary = "0" + binary;
case 1:
binary = "1" + binary;
}
}
return binary;
}
Sie haben Ihre ** break; ** - Anweisung im obigen Code vergessen. Sie fügen nach jeder 0 ein 1 Bit hinzu. –
Wenn Sie eine int
in seine binäre Darstellung konvertieren möchten, müssen Sie dies tun:
String binaryIntInStr = Integer.toBinaryString(int);
Wenn Sie das erhalten möchten Bitzahl von einem int
, müssen Sie dies tun:
Aber du könntest die Binärdarstellung einer Ganzzahl nicht als Binärzahl mit einer festen Anzahl von Bits bekommen, zum Beispiel hat 7 3 Bits, aber du kannst seine Bitzahl 2 oder 1 nicht setzen. Weil du gewonnen hast Erhalten Sie 7 von seiner binären Darstellung mit 2 oder 1 Bit-Zählung.
Die erste Zeile konvertiert die binäre Ganzzahl in Dezimal und analysiert sie dann als Binärdatei. Wenn es richtig war, würde es nichts tun, aber es ist nicht korrekt. – EJP
@EJP Ich habe die Antwort neu editieren, ist es jetzt? – SilentKnight
Dies ist eine einfache Art und Weise.
String binaryString = Integer.toBinaryString(number);
binaryString = binaryString.substring(binaryString.length() - numBits);
Wo Nummer die ganze Zahl zu konvertieren und numBits ist die feste Anzahl von Bits, die Sie interessiert sind
- 1. Festlegen einer festen Anzahl von Elementen eines Arrays in Ruby
- 2. mit numpy ein int in ein Array von Bits zu konvertieren
- 3. Wie benutze ich Python, um eine Gleitkommazahl in einen festen Punkt mit vordefinierter Anzahl von Bits zu konvertieren
- 4. Float in Bits konvertieren
- 5. Konvertieren eines char * in int
- 6. Ansatz zum Lesen einer beliebigen Anzahl von Bits in Swift
- 7. Konvertieren eines String-Arrays in ein Int-Array in C#
- 8. Schnell: Set Top 2 Bits von Int
- 9. Konvertieren von IO Int in Int
- 10. Konvertieren von int in char?
- 11. ein int konvertieren mit Json.Net in bool
- 12. Konvertieren eines int in ein unsigniertes Zeichen in C
- 13. Konvertieren eines Int in QBytearray in Qt
- 14. Integer Array binäres Array
- 15. Manuelles Konvertieren eines Zeichens in ein int - Seltsames Verhalten
- 16. Javascript - Ganzzahl in Array von Bits konvertieren
- 17. Haskell: Konvertieren von Int String
- 18. Was ist ein binäres Nullzeichen?
- 19. Konvertieren von Wert eines Eval von int in Zeichenfolge
- 20. Konvertieren von char in int?
- 21. Wie vergleichen wir festen int-Wert mit Spalte, die Sonderzeichen und Anzahl in mysql enthalten
- 22. Wird ein Ruby Prime-Objekt bei der Initialisierung mit einer festen Anzahl von Primzahlen geliefert?
- 23. Höhe eines Textblocks mit einer festen Breite in PHP berechnen
- 24. eine Flag-Nummer einer festen Anzahl von Beobachtungen zuweisen
- 25. Konvertieren von ENUM in int
- 26. Konvertieren von IntWritatble in int
- 27. Konvertieren eines vorzeichenlosen 16-Bit-Int in ein vorzeichenbehaftetes 16-Bit-Int in C#
- 28. einen String in ein Array Int konvertieren
- 29. Konvertieren einer Int in eine IP-Adresse
- 30. Wie konvertiert man ein Bildobjekt in ein binäres Blob?
[Links Polsterung ein String mit Nullen] (http://stackoverflow.com/questions/4469717/left-padding-a-string-with-zeros) könnte helfen, dies zu lösen, zusammen mit 'Integer.toBinaryString (int)'. – Obicere