java中\t包含多少空格

java中\t包含多少空格,java,Java,这给了我下面的输出 第一次\t=7个空间,第二次\t=3个空间 原因是什么?根据您使用的控制台,该选项卡的工作原理类似于4或8的乘法。第一次控制台打印在选项卡之前包含1个字符h。因此,h和w之间将有7空间。在第二种情况下,hello的字符长度为5char,因此hello和world之间将有3空格 注意:您提到h和w之间有6个空格,但我相信是7个空格。 对于以下示例: public class Example1 { public static void main(String[] arg

这给了我下面的输出

第一次\t=7个空间,第二次\t=3个空间
原因是什么?

根据您使用的
控制台,该选项卡的工作原理类似于4或8的乘法。第一次控制台打印在选项卡之前包含1个字符
h
。因此,h和w之间将有
7
空间。在第二种情况下,
hello
的字符长度为
5
char,因此hello和world之间将有
3
空格

注意:您提到h和w之间有6个空格,但我相信是7个空格。 对于以下示例:

public class Example1 {
    public static void main(String[] args) {

        System.out.println("h\tw");
        System.out.println("h   w");
        System.out.println("hello\tworld");
        System.out.println("hello   world");


    }
}

第1行将生成
helloworld
作为输出。现在,
helloworld
10
char。我假设你的控制台在8乘法原理上工作。因此,大于
10
的最小乘法是
8*2=16。
因此将有
16-10=6
空间

选项卡实际上添加了一个可变长度,但它有一个最大长度。试想一下,每8个字符就有一个制表符停止(只要竖线停止,就可以使用制表符)

如果使用此字符串“Hello\tWorld”,它将移动到Hello之后的下一个制表位

|_ _ _ _ _ _ _ _|_ _ _ _ _ _ _ _|
同样适用于较短长度的字符串,如“h\tw”

|H E L L O _ _ _|W O R L D _ _ _|

这与Java无关。它更多地与您用来运行它的shell有关。看起来这个特殊的shell每八列都有一个。NeBeBeas也给了我相同的输出。YUP,C++也一样,如果你把“Soal.Out.PrtLn”改为“Cout So.out。PrtLn(HeloWord \TWork)),这个语句应该有多少个空格?你能解释吗?@ WathSalaWasWathAdLuWaTaA请参阅我编辑的答案。
|H E L L O _ _ _|W O R L D _ _ _|
|H _ _ _ _ _ _ _|W _ _ _ _ _ _ _|