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

原文:https://www.studytonight.com/java-type-conversion/how-to-convert-java-decimal-to-octal

在 Java 中,十进制值可以通过使用 Integer.toOctalString() 方法或自己的自定义代码转换成八进制值。让我们看看例子。

1.Integer.toOctalString()方法

toOctalString() 方法是 Integer 类的一部分,它将十进制字符串转换为八进制字符串,八进制字符串还可以转换为任何类型。

例 1:

这里,使用toOctalString()方法将十进制值转换为八进制字符串。请看下面的例子。

public class StudyTonight
{    
    public static void main(String args[])
    {    
        int d1 = 7;
        int d2 = -232;
        int d3 = 30402;

        String h1 = Integer.toOctalString(d1);
        String h2 = Integer.toOctalString(d2);
        String h3 = Integer.toOctalString(d3);

        System.out.println("Octal value is : " +h1);
        System.out.println("Octal value is : " +h2);
        System.out.println("Octal value is : " +h3);
    }    
}

八进制值为:7 八进制值为:3777777430 八进制值为:73302

例 2:

可以使用自定义逻辑将十进制值转换为八进制值。

public class StudyTonight
{    
    public static void main(String [] args)
    {  
        int dec = 34673;
        int r;   
        String oct = "";   
        char octchars[]={'0','1','2','3','4','5','6','7'};  

        while(dec>0)  
        {  
            r = dec%8;   
            oct = octchars[r]+oct;   
            dec = dec/8;  
        }  
        System.out.println("Octal value is " +oct);  
    }
}

八进制值为 103561