首頁 > Java > java教程 > 如何在 Java 中取得整數的零填充二進位表示法?

如何在 Java 中取得整數的零填充二進位表示法?

DDD
發布: 2024-12-07 08:07:12
原創
593 人瀏覽過

How to Get Zero-Padded Binary Representations of Integers in Java?

在 Java 中取得整數的零填充二進位表示

在程式設計中,經常需要以二進位格式表示整數。雖然 Java 的 Integer.toBinaryString() 方法提供二進位表示形式,但預設情況下它不添加零填充。本文探討如何在 Java 中取得零填充的二進位表示。

零填充要求

假設我們有數字 1、2、128 和 256,我們希望用二進位表示它們,並用零填充到 16 位元的長度。所需的輸出將是:

0000000000000001
0000000000000010
0000000010000000
0000000100000000
登入後複製

標準 Java 解決方案

Java 的 String.format() 方法允許使用者指定填充的格式說明符。然而,它的預設行為是使用空格進行左填充,導致:

               1
登入後複製

定制解決方案

為了實現零填充,我們可以使用自訂方法:

String binaryString = Integer.toBinaryString(1);
String zeroPaddedBinaryString = String.format("%16s", binaryString).replace(' ', '0');
登入後複製

這裡,我們首先使用Integer.toBinaryString() 來取得二進位代表。然後,我們使用 String.format() 和格式說明符「 s」來確保 16 位元寬度並使二進位表示形式左對齊。最後,我們使用 Replace() 方法將空格替換為零。

替代解決方案

另一種方法是使用添加必要的零填充的自定義方法:

public static String zeroPaddedBinary(int number) {
    String binaryString = Integer.toBinaryString(number);
    int desiredLength = 16;
    StringBuilder zeroPaddedBinaryString = new StringBuilder();
    for (int i = binaryString.length(); i < desiredLength; i++) {
        zeroPaddedBinaryString.append('0');
    }
    zeroPaddedBinaryString.append(binaryString);
    return zeroPaddedBinaryString.toString();
}
登入後複製

此方法獲取整數,將其轉換為二進位字串,確定必要的零填充,添加零,並傳回補零的二進位表示。

以上是如何在 Java 中取得整數的零填充二進位表示法?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板