日期:2014-05-20  浏览次数:20716 次

请教一个关于格式转换符的问题
以下是一段九九乘法表的小程序:

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


问题:
1、程序中%d*%d=%2d,%d是以十进制整数方式输出,这个%2d是什么含义?我试了试把%2d换成%d,程序一样可以运行。

2、最后一句System.out.println()在这段程序中有什么作用?

------解决方案--------------------
%d表示格式化数字,%2d表示数字为2位显示,如果不足两位则补空格
------解决方案--------------------
System.out.println(); //打印一个空行
------解决方案--------------------
%2d表示两为十进制整数,
System.out.println()在这段程序中起换行作用.