根据Formatting Numeric Print Output
格式说明符以百分号(%)开头,以a结尾
转换器。转换器是指示类型的字符
要格式化的参数。在百分号(%)和。之间
转换器你可以有可选的标志和说明符
在这种情况下:
-
%
是格式语法必填前缀。
-
-
是左对齐的标志。
-
10
表示宽度为十个字符,必要时带前导零。
-
d
,十进制整数。
醇>
所以你的主要方法应该是:
public class Tst {
public static void main (String[] args)
{
for(int j=1 ; j<=31;j++) {
System.out.printf("%-10d",j);
if(j%7==0) {
System.out.println();
}
}
}
}
给出结果输出:
您的代码是正确的。但您应该在终端/控制台中使用MONOSPACED(固定宽度)字体,如Courier或Lucida Console:
- 您在OS终端中使用的不是等宽字体
- 或者您在IDE的控制台中不使用等宽字体
- 或者您将输出转发到您在某些编辑器中再次使用非等宽字体
查看的文件
- 或类似的非等宽字体