读书人

关于一个整数用二进制八进制十六进

发布时间: 2012-02-17 17:50:42 作者: rapoo

关于一个整数用二进制,八进制,十六进制输出的问题
小弟正在学习J2SE的编程,遇到该问题,于是写出了这样的代码:

Java code
package ch2;public class Class2 {    public static void main(String[] args){        int a = 100;//假定转换的数字为100        b(a);        System.out.print("\n");        o(a);    }    public static void b(int n){        int temp = n;        System.out.print("二进制表示结果:");        while(temp!=0){            System.out.print(temp%2);            temp/=2;        };        return;    }    public static void o(int n){        int temp = n;        System.out.print("八进制表示结果:");        while (temp!=0){            System.out.print(temp%8);            temp/=8;        };        return;    }//由于技术不行,结果我十六进制输出实在不知道怎么写出来了,就写了个八进制和二进制}


但是发现结果不正确:
Java code
二进制表示结果:0010011八进制表示结果:441


求大神帮忙修改下。

[解决办法]
Integer类里面封装了这个方法

Java code
package jiakai;public class MyTest {        public static void main(String[] args) {        int a = 256;        System.out.println(Integer.toBinaryString(a));        System.out.println(Integer.toOctalString(a));        System.out.println(Integer.toHexString(a));    }} 

读书人网 >J2SE开发

热点推荐