java中输出格式控制详解(System.out.printf用法)

除了System.out.print(ln),java中还有一种输出命令,而且比以上两种更为复杂、强大,那就是System.out.printf

样例:

1
2
3
4
5
6
7
8
9
10
11
public class Rentcar {

public static void main(String[] args) {
for (int i = 0; i < 8; i++) {
for (int j = 0; j < 10; j++) {
System.out.printf("%5d", i*j);
}
System.out.println();
}
}
}

输出结果:

1
2
3
4
5
6
7
8
0    0    0    0    0    0    0    0    0    0
0 1 2 3 4 5 6 7 8 9
0 2 4 6 8 10 12 14 16 18
0 3 6 9 12 15 18 21 24 27
0 4 8 12 16 20 24 28 32 36
0 5 10 15 20 25 30 35 40 45
0 6 12 18 24 30 36 42 48 54
0 7 14 21 28 35 42 49 56 63

倘若不用System.out.printf ,而是用System.out.print(ln)格式就出现了明显错误,如下:

1
2
3
4
5
6
7
8
0000000000
0123456789
024681012141618
0369121518212427
04812162024283236
051015202530354045
061218243036424854
071421283542495663

好了,开始System.out.printf 详细学习吧

基本格式:格式控制符以一个%开始,一个字母结束,字母规定了方法按照何种方式打印这个值,例如d表示十进制整数(int),f表示浮点数(double).

例如:int x=12,y=10;

System.out.printf(“(%d,%d)”,x,y);

输出结果:

1
(12,10)

%d代替后面的参数,格式字符串中的格式控制字符的个数必须与后面提供的参数个数相匹配。

常用格式控制符

格式控制字符 结果
%d 整数
%8d 整数,右对齐,输出宽度为8
-6% 整数,左对齐,输出宽度为6
%f 浮点数
%8f 浮点数,右对齐,输出宽度为8
%.2f 浮点数,精确到百分位
%16.3f 浮点数,精确到千分位,输出到千分位,输出宽度为16

string同理,只是将d换成s.

打赏
  • 版权声明: 本博客所有文章除特别声明外,著作权归作者所有。转载请注明出处!
  • Copyrights © 2015-2023 高行行
  • 访问人数: | 浏览次数:

请我喝杯咖啡吧~

支付宝
微信