java中的"\t"和空格总是让人迷惑,其实很简单,通过一个例子就能很快明白!
比如说打印九九乘法表!
先来看用空格的效果:
public class MultiplicationTable {
public static void main(String[] args) {
// 打印九九乘法表
for(int i = 1; i <= 9; i++) {
for(int j = 1; j <= i; j++) {
System.out.print(i+"*"+j+"="+i*j+" ") ;
}
System.out.println();
}
}
}
打印出来的效果是这样的,很明显到了43和53的时候由于数的位数的原因就不能对齐了。
那我们如何实现上面对齐的效果呢?
public class MultiplicationTable {
public static void main(String[] args) {
// 打印九九乘法表
for(int i = 1; i <= 9; i++) {
for(int j = 1; j <= i; j++) {
System.out.print(i+"*"+j+"="+i*j+"\t") ;
}
System.out.println();
}
}
}
可以看出,其实就是把 “ ” 换成 “\t” ,现在来说明空格和 “\t” 的区别!
\t 是补全当前字符串长度到8的整数倍,最少1个最多8个空格,
补多少要看你 \t 前字符串长度,
比如当前字符串长度10,那么\t后长度是16,也就是补6个空格。
如果当前字符串长度12,此时\t后长度是16,补4个空格