Java输出语句以及一些占位符在输出语句中的使用
System.out.print();
Syetem.out.printf();
System.out.println();
print就是一般的标准输出,但是不换行。
println和print基本没什么差别,就是最后会换行。
printf主要是继承了C语言的printf的一些特性,可以格式化输出。
参照JAVA API的定义如下:
'd' 整数 结果被格式化为十进制整数
'o' 整数 结果被格式化为八进制整数
'x' ,'X' 整数 结果被格式化为十六进制整数
'e' ,'E' 浮点 结果被格式化为用计算机科学记数法表示的十进制数
'f' 浮点 结果被格式化为十进制数
'g' ,'G' 浮点 根据精度和舍入运算后的值,使用计算机科学记数形式或十进制格式对结果进行格式化。
'a' ,'A' 浮点 结果被格式化为带有效位数和指数的十六进制浮点数
print将它的参数显示在命令窗口,并将输出光标定位在所显示的最后一个字符之后。
println 将它的参数显示在命令窗口,并在结尾加上换行符,将输出光标定位在下一行的开始。
printf是格式化输出的形式。
既
System.out.print("用print输出i:" + i);
System.out.println("用print输出i:" + i);
System.out.print("用print输出i:%d", i);
占位符%d,%f,%s,%c
等
这些占位符不能用在print和println里面,得用在printf里面
(以下内容是我仅测试了的几个符号)
数字放在这些占位符中间代表的是输出后占几个占位符。默认向右对齐,想让左对齐,在数字前加上-
号即可。这样的输出是很有用的,比如你想输出一个表格,因各个数大小不一,有的5位有的4位,这样输出的的表格结果就对不齐了。如果将输出结果全部为同一样的占位符数。那样就对齐了。
例如:
int a = 5;
System。out.printf("%5d",a)
//输出的结果就是 5,前面是4个空格,加一个数字5
int a = 5;
System。out.printf("%05d",a)
//意思是输出5个占位符,不足的补0,输出的数据为00005
-
号加数字一起使用可以放在上面这些占位符中间代表左对齐(仅有-
号编译不会报错但运行有错)
+
号可以用在%和d,f之间,代表输出数据的符号(符号是正就输出正,是负就输出负)
而对于%f这些输出浮点数的,可以这样写:%9.2
,代表的意思是输出9个占位符,小数点后输出两位数字。%2.9
也不会报错,但输出的不是两个占位符,而是原来数据小数点前多少就输出多少位,在小数点后还是按照定义的输出9位。
测试的时候在他们中间加数字想输出一个占位符,感觉是数据不够补空格,数据超过还是输出的原来数据。