Java如何将十进制转换为八进制?

从下面的代码片段中,您将学习如何将十进制转换为八进制字符串,以及如何将八进制数字的字符串转换回十进制。对于第一次转换,我们可以利用该Integer.toOctalString()方法。此方法采用整数,然后将返回表示相应八进制数的字符串。

要将八进制字符串转换回十进制数字,可以使用Integer.parseInt()方法。它需要两个参数,一个代表八进制数的字符串和一个8来自八进制数的基数。

package org.nhooo.example.lang;

public class IntegerToOctalExample {
    public static void main(String[] args) {
        int integer = 1024;
        // 将整数值转换为八进制字符串表示形式。
        String octal = Integer.toOctalString(integer);
        System.out.printf("Octal value of %d is '%s'.\n", integer, octal);

        // 现在我们将八进制字符串转换回整数
        // 通过调用Integer.parseInt并传递8作为基数。
        int original = Integer.parseInt(octal, 8);
        System.out.printf("Integer value of octal '%s' is %d.%n", octal, original);

        // 当出于格式化目的时,我们实际上可以使用printf
        // 或String.format以其他形式显示整数值
        // 格式(o =八进制,h =十六进制)。
        System.out.printf("Octal value of %1$d is '%1$o'.\n", integer);
    }
}

这是我们程序的结果。

Octal value of 1024 is '2000'.
Integer value of octal '2000' is 1024.
Octal value of 1024 is '2000'.