This question already has answers here:
Printing with “\t” (tabs) does not result in aligned columns
(8个答案)
3年前关闭。
我是Java编程的新手,所以/ t转义序列使我感到困惑。我试图为乘法表编写代码:
输出结果如下:
我的意思是,为什么选项卡不是在每种情况下都“相同大小”,即1x1 = 1与1x2 = 2距离很远,而10x1 = 10和10x2 = 20距离更近。
另外,当我尝试在代码中执行以下操作时:
(注意等号两边的空格),输出混乱:
(8个答案)
3年前关闭。
我是Java编程的新手,所以/ t转义序列使我感到困惑。我试图为乘法表编写代码:
for(int i = 1; i<=10; i++){
for(int j = 1; j<=5; j++){
System.out.println(j + "*" + i + "=" + j*i + "\t");
}
System.out.println();
}
输出结果如下:
我的意思是,为什么选项卡不是在每种情况下都“相同大小”,即1x1 = 1与1x2 = 2距离很远,而10x1 = 10和10x2 = 20距离更近。
另外,当我尝试在代码中执行以下操作时:
System.out.println(j + "*" + i + " = " + j*i + "\t");
(注意等号两边的空格),输出混乱:
最佳答案
默认情况下,制表符(\t
)形成一个“表”,因此列具有固定大小(制表符宽度)。在控制台中,将添加空格,直到下一列开始。
如果您的文本宽于(或等于)一列(如您的第二个示例中所示),那么将跳过下一列(这就是为什么要添加另一列的原因),结果看起来有些奇怪。
您可以使用简单的文本编辑器进行尝试,只需按制表键,您将看到相同的行为:
a b c
looooooong d e
07-24 09:27