欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

java输出二进制,八进制,十六进制数

程序员文章站 2022-03-08 17:27:22
...

System.out.printf(format, args);

System.out.printf("%010x\n",x);//按10位十六进制输出,向右靠齐,左边用0补齐

System.out.printf("%010o\n",x);//按10位八进制输出,向右靠齐,左边用0补齐
将得到以下输出
000000000f
0000000017

System.out.printf("%x\n",x);//按16进制输出
System.out.printf("%o\n",x);//按8进制输出

结果:

f
17

注意在设置格式的print语句里不能用println,会报错。

这类语句不适用于输出二进制数。

输出二进制数的方法:

String s=Integer.toBinaryString(x);

把整数x转成二进制数,以字符串表示,再输出字符串

定义二进制数的方法:

二进制数 可以用0b来表示,0b后面的数字不能有超过1或小于0的数,也就是说只能有0或者1。

int a8=0b11111111;
System.out.println(“二进制255等于”+a8);

输出结果:

二进制255等于255

赋值八进制数和十六进制数的方法如下

int b=071;//赋值八进制数,前面加0
System.out.println("b = " + b);
int i = 0x00000011; //赋值十六进制数,前面加0x
System.out.println("i = " + i);

输出结果是:

b = 57
i = 17

其他一些设置格式的语句:

<span style="white-space:pre">	</span>// 定义一些变量,用来格式化输出。  
        double d = 345.678;  
        String s = "你好!";  
        int i = 1234;  
        // "%"表示进行格式化输出,"%"之后的内容为格式的定义。  
        System.out.printf("%f", d);// "f"表示格式化输出浮点数。  
        System.out.println();  
        System.out.printf("%9.2f", d);// "9.2"中的9表示输出的长度,2表示小数点后的位数。  
        System.out.println();  
        System.out.printf("%+9.2f", d);// "+"表示输出的数带正负号。  
        System.out.println();  
        System.out.printf("%-9.4f", d);// "-"表示输出的数左对齐(默认为右对齐)。  
        System.out.println();  
        System.out.printf("%+-9.3f", d);// "+-"表示输出的数带正负号且左对齐。  
        System.out.println();  
        System.out.printf("%d", i);// "d"表示输出十进制整数。  
        System.out.println();  
        System.out.printf("%o", i);// "o"表示输出八进制整数。  
        System.out.println();  
        System.out.printf("%x", i);// "d"表示输出十六进制整数。  
        System.out.println();  
        System.out.printf("%#x", i);// "d"表示输出带有十六进制标志的整数。  
        System.out.println();  
        System.out.printf("%s", s);// "d"表示输出字符串。  
        System.out.println();  
        System.out.printf("输出一个浮点数:%f,一个整数:%d,一个字符串:%s", d, i, s);  
        // 可以输出多个变量,注意顺序。  
        System.out.println();  
        System.out.printf("字符串:%2$s,%1$d的十六进制数:%1$#x", i, s);  
        // "X$"表示第几个变量。  

结果:

345.678000
345.68
+345.68
345.6780
+345.678
1234
2322
4d2
0x4d2
你好!
输出一个浮点数:345.678000,一个整数:1234,一个字符串:你好!
字符串:你好!,1234的十六进制数:0x4d2

相关标签: 经典题目