java数组中的制表符

java数组中的制表符,java,Java,当我运行我的代码时,我使用两个不同的数组来显示一个数据表,一旦它被显示,第一列和第二列之间就有一个不寻常的间隙 这就是它看起来的样子 我改变了角色的大小,看起来像这样 尝试以下代码: public static void main(String[] args) { String leftAlignFormat = "%-4s %-10s %-4s %n"; String hasan[] = {"","Hdddddd","Hdddde", "Ldddi"};

当我运行我的代码时,我使用两个不同的数组来显示一个数据表,一旦它被显示,第一列和第二列之间就有一个不寻常的间隙

这就是它看起来的样子

我改变了角色的大小,看起来像这样

尝试以下代码:

public static void main(String[] args) {
        String leftAlignFormat = "%-4s  %-10s  %-4s %n";
        String hasan[] = {"","Hdddddd","Hdddde", "Ldddi"};
        String haf[] = {"","1.008","4.002","6.941"};
        for(int counter=1;counter<hasan.length;counter++){
            System.out.format(leftAlignFormat, counter, hasan[counter], haf[counter]);
        }
    }

我想你误解了它的作用。它实际上只是放了一个制表符。你得到的正是你想要的。但有些差距更大,有些差距更大。这是制表符的本质。在输出的每8个字符处有一个称为“制表符停止”的东西。“制表符”字符只会将光标前进到下一个“制表位”。示例:“this\tthat”实际上将输出类似于“this-that”的内容,因为它将强制“that”从第8列开始。你看到的是你所看到的,因为有时候你的第一列宽度超过8个字符,所以它把你的光标移到16位而不是8i.e。“Hydrogen”有8个字符长,因此在它之后放置一个制表符将光标移动到位置16。“Hemium”只有7个字符长,因此在它之后放置一个制表符将光标移动到位置8。你可能会说android甚至没有tab键。你是遗留代码的受害者错误还在那里我也改变了字符的大小
1     Hdddddd     1.008 
2     Hdddde      4.002 
3     Ldddi       6.941