Konvertieren von Int in Binär in Java

Rupam Yadav 12 Oktober 2023
  1. Konvertieren Int in Binär mit Integer.toBinaryString()
  2. Konvertieren Int in Binär mit Integer.toString()
  3. Konvertieren Int in Binär mit StringBuilder und einer Schleife
Konvertieren von Int in Binär in Java

Eine Binärzahl wird mit zwei Binärziffern dargestellt, der 0 und der 1. Wir können einen int-Wert in Java mit den drei unten aufgeführten Methoden in einen Binärwert umwandeln.

Konvertieren Int in Binär mit Integer.toBinaryString()

Der gebräuchlichste und einfachste Weg, einen int-Wert in einen Binärwert umzuwandeln, ist die Verwendung der toBinaryString()-Funktion der Integer-Klasse. Integer.toBinaryString() akzeptiert ein Argument vom Typ int.

Im Programm speichern wir einen int-Wert in einer Variablen numInt und übergeben ihn dann als Argument in der Integer.toBinaryString()-Methode, die einen String zurückgibt.

public class JavaExample {
  public static void main(String[] args) {
    int numInt = 150;
    String binaryString = Integer.toBinaryString(numInt);
    System.out.println(binaryString);
  }
}

Ausgabe:

10010110

Konvertieren Int in Binär mit Integer.toString()

In diesem Beispiel verwenden wir eine andere Methode der Klasse Integer: die Methode toString().

Integer.toString() akzeptiert zwei Argumente, wobei das zweite Argument optional ist. Das erste Argument ist der Wert, der in einen String konvertiert werden soll, und das zweite Argument ist der Basiswert für die Konvertierung.

Für unser Programm müssen wir beide Argumente der Funktion toString() verwenden, um die Basis 2 anzugeben, die die Binärziffern 0 und 1 darstellt. In einfachen Worten, wenn wir Radix 2 verwenden, wird int in einen String-Wert umgewandelt, der nur 0 und 1 darstellt.

Wir drucken das Ergebnis, das eine binäre Darstellung von numInt ist.

public class JavaExample {
  public static void main(String[] args) {
    int numInt = 200;
    String binaryString = Integer.toString(numInt, 2);
    System.out.println(binaryString);
  }
}

Ausgabe:

11001000

Konvertieren Int in Binär mit StringBuilder und einer Schleife

Das letzte Programm verfolgt einen traditionellen Ansatz; Anstatt eine eingebaute Funktion zu verwenden, um den int-Wert in eine Binärdatei umzuwandeln, erstellen wir unsere Funktion, die dieselbe Aufgabe erfüllt.

Im folgenden Code erstellen wir eine Funktion convertIntToBinary(), die den Wert int als zu konvertierenden Parameter erhält. Wir setzen den Rückgabetyp der Funktion auf String.

Innerhalb der convertIntToBinary()-Methode prüfen wir zuerst, ob die int-Variable numInt eine Null enthält oder nicht. Wenn ja, geben wir 0 zurück, weil die binäre Darstellung von 0 in int auch 0 ist. Wenn es sich um einen ganzzahligen Wert ungleich Null handelt, erstellen wir eine StringBuilder-Klasse und eine while-Schleife.

Wir lassen die Schleife laufen, bis numInt größer als Null ist. In der Schleife führen wir drei Schritte aus; Die erste besteht darin, den Rest von numInt mit numInt % 2 zu finden und dann den Wert von remainder an den StringBuilder anzuhängen.

Für den letzten Schritt dividieren wir den numInt-Wert durch 2 und speichern ihn in numInt selbst. Sobald wir alle Schritte ausgeführt haben und aus der Schleife heraus sind, kehren wir den stringBuilder-Wert um, um das korrekte Ergebnis zu erhalten, und geben das Ergebnis zurück, nachdem wir den stringBuilder-Wert in einen String konvertiert haben.

In der Methode main() nehmen wir die Eingabe des Benutzers und übergeben sie an die Methode convertIntToBinary(), die das binäre Ergebnis zurückgibt.

import java.util.Scanner;

public class JavaExample {
  public static void main(String[] args) {
    System.out.println("Enter a number to convert it to a binary: ");
    Scanner scanner = new Scanner(System.in);
    int getIntNum = scanner.nextInt();

    String getConvertedResult = convertIntToBinary(getIntNum);
    System.out.println("Converted Binary: " + getConvertedResult);
  }

  static String convertIntToBinary(int numInt) {
    if (numInt == 0)
      return "0";

    StringBuilder stringBuilder = new StringBuilder();

    while (numInt > 0) {
      int remainder = numInt % 2;
      stringBuilder.append(remainder);
      numInt /= 2;
    }

    stringBuilder = stringBuilder.reverse();
    return stringBuilder.toString();
  }
}

Ausgabe:

Enter a number to convert it to a binary: 
150
Converted Binary: 10010110
Rupam Yadav avatar Rupam Yadav avatar

Rupam Saini is an android developer, who also works sometimes as a web developer., He likes to read books and write about various things.

LinkedIn

Verwandter Artikel - Java Integer

Verwandter Artikel - Java Binary