java中怎么输出?
内容摘要
java中的两种常用的输出方式:print()和println() 。这两种的输出方式在使用时输入条件并没有明显的差别。它们的不同点体现在输出的末尾是否换行。【推荐学习:java课程】eg:pub
文章正文
java中的两种常用的输出方式:print()和println() 。这两种的输出方式在使用时输入条件并没有明显的差别。它们的不同点体现在输出的末尾是否换行。【推荐学习:java课程】
eg:
1 2 3 4 5 6 7 8 9 10 11 | public class eg { //交叉使用可以体会到作用的差异 public static void main(String[] args) { System.out.print( "123456" ); System.out.println( "abced" ); System.out.println( "abced" ); System.out.print( "123456" ); System.out.println( "abced" ); } } |
结果:
分析结果:不难看出,每次使用print()时,末尾都跟有下一个输出(abced),即:print()未换行。而每次的abced之后都有换行。
注意:print()使用时需不可以无内容输出
eg:
1 2 3 4 5 | public class eg { public static void main(String[] args) { System.out.print(); //此时print无内容输出 } } |
分析结果:使用print()时,当括号内无内容时是无法编译的,即程序会报错,这样使用print()是不允许的。
println()可以直接输出,起换行的作用
eg:
1 2 3 4 5 6 7 8 9 | public class add { //由于使用单独的一行无法体现结果,所以加入print()显示效果 public static void main(String[] args) { System.out.print( "123456" ); System.out.print( "123456" ); System.out.println(); System.out.print( "123456" ); } } |
结果:
分析结果:在print的三行输出中,只有第二此输出进行了换行,也正是println为它提供了换行
print()和println()是可以相互转化的,可以使用换行符 进行换行,用print()也可以达到println()的目的
eg:
1 2 3 4 5 6 7 8 9 10 | public class eg { //与上图的代码进行对比 效果显而易见 public static void main(String[] args) { System.out.print( "123456" ); System.out.print( "123456" ); System.out.print( " " ); System.out.print( "123456" ); } } |
结果:
结果分析:明显的,不同的代码实现了不同的效果
java除了以上两种常见的输出以外,还有一种功能较强的输出:printf()
注意:
printf()不能换行
printf()也不能不带内容直接输出
printf()的输出规则更像是print(),但它比print()多一些功能。在C语言以及C++中,都有固定长度输出,而java中的print()和pritln()都不能实现这一功能。java是由C语言编写的,固定长度输出这一功能并没有被阉割,而是被printf()继承。printf对固定的实现与C的实现类似。
可以输出2、8、16进制的数
可以固定格式输出
具体实现如下:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 | package com.hone.test; // "%"表示进行格式化输出, "%"之后的内容为格式的定义。 public class Printf { public static void main(String[] args) { double d = 345.678; String s = "hello World" ; int a = 123; //浮点型的输出 System.out.printf( "%,d" ,a); //格式化输出数据,每三个数据加上一个, System.out.println(); System.out.printf( "%f" , d); // 345.678000 System.out.println(); //"9.2"中的9表示输出的长度,2表示小数点后的位数。 345.678位数不够前面不上空格 System.out.printf( "%9.3f" , d); System.out.println(); System.out.printf( "%+9.3f" , d); //"+"表示输出的数带正负号 System.out.println(); System.out.printf( "%-9.3f" , d); //"-"表示输出的数左对齐(默认为右对齐) System.out.println(); System.out.printf( "%+-9.3f" ,d); //"+-"表示输出的数带正负号且左对齐 System.out.println(); //整型的输出 System.out.printf( "%d" , a); //"d"表示输出十进制整数。 System.out.println(); System.out.printf( "%04d" , a); //规定为4位,不够左边添加0 System.out.println(); System.out.printf( "%d%%" , a); //如果想输出百分数,则连续用两个 %% System.out.println(); System.out.printf( "%o" , a); //"o"表示输出八进制整数。 System.out.println(); System.out.printf( "%x" , a); //"x"表示输出八进制整数。 //字符串的输出 System.out.println(); System.out.printf( "%s%n" , s); //输出字符串,其中 %n表示换行 System.out.printf( "输出一个浮点数:%.3f,一个整数:%d,一个字符串:%s" ,d,a,s); //输出多个变量 } } |
代码注释
[!--zhushi--]