标准输出通常是文字模式为主的主控台(终端机),这边介绍几个格式控制技巧,在主控台显示时可以协助输出的显示格式。 首先介绍格式字节控制,先表列一些常用的控制字节:
下面这段程序告诉您如何指定字节编码来输出"Hello"这段文字: System.out.println("\u0048\u0065\u006C\u006C\u006F");
在输出数值时,默认都会以十进位的方式来显示数值,下面这几段程序可以让您分别以不同进位制来显示数值: int
x = 19;
// 转成二进位 10011 System.out.println(Integer.toBinaryString(x)); // 转成十六进位 13 System.out.println(Integer.toHexString(x)); // 转成八进位 23 System.out.println(Integer.toOctalString(x)); 在 J2SE 5.0 中,您可以使用 System.out.printf() 作简单的输出格式设定,例如: //
输出 19 的十进位表示
System.out.printf("%d%n", 19); // 输出 19 的八进位表示 System.out.printf("%o%n", 19); // 输出 19 的十六进位表示 System.out.printf("%x%n", 19); '%d'表示将指定的数值以 十进位表示,'%o'是八进 位表示,而'%x'是十六进位表示,'%n'是 指输出平台特定的换行字节,如果是在Windows下实际上会置换为 '/r/n',如果是 Linux下则会置换为'/n'。 下表简单列出了一些常用的转换符号:
您可以在输出浮点数时指定精度,例如: System.out.printf("example:%.2f%n",
19.234);
执行结果会输出: example:19.23
您也可以指定输出时,至少要预留的字节宽度,例如: System.out.printf("example:%6.2f%n",
19.234);
由于预留了6个字节宽度,不足的部份要由空白字节补上,所以执行结果会输出如下(19.23只占五个字节,所以补上一个空白在前端): example:
19.23
以上只是简短的列出一些常用的输出转换符号,事实上,这些功能都是由 java.util.Formatter 所提供的,如果您需要更多关于输出格式的控制,您可以看看线上API文件以查询相关设定。 |