\t 是一个转义字符,在Java中的含义为补全空格。

如果 \t 前所连接内容长度不是8的整数倍,那么 \t 会添加相应的空格数使总长度达到最近的8的整数倍:

public class HelloWorld{
    public static void main(String[] args) {
        System.out.println("00000000前面有8位");
        System.out.println("000000\t\\t前所连接内容长度有6位,补2位空格");
        System.out.println("0000000000000000前面有16位");
        System.out.println("000000000\t\\t前所连接内容长度有9位,补7位空格");
    }
}

JavaSE-06-1

这里发现最后输出的内容只补全了3个空格,与预期结果不同,但是在控制命令台中输出符合预期:

JavaSE-06-2

这是因为IDEA中默认的Tab Size为4,这里调为8即可:

JavaSE-06-3

调整之后输出变得符合预期:

JavaSE-06-4

如果 \t 前所连接内容长度为8的整数倍,那么 \t 会添加8个空格:

public class HelloWorld{
    public static void main(String[] args) {
        System.out.println("0000000000000000前面有16位");
        System.out.println("00000000\t\\t前所连接内容长度有8位,补8位空格");
    }
}

JavaSE-06-5

可见输出符合预期。