我如何在 java 中连续转义 \t?

How do i continuously escape \t in java?

我搜索了相同的问题。(How do I escape a string in Java?)但我无法解决我的问题。

部分源代码 System.out.println("year : "+年份+"\t"+"rate_year : "+rate_year+"\t"+"rate_month : "+rate_month);

但是当我打印那个 . . . 年:10 rate_year:0.4 rate_month:0.03333333333333333

这首先打印“\t” 为什么所有的“\t”都不适应???

“\t”前进到下一个制表位。如果稍微更改文本描述,请注意对齐方式:

System.out.println("year : "+year+"\t"+"rate_year : "+rate_year+"\t"+"rate_month : "+rate_month);
System.out.println("year : "+year+"\t"+"ry : "+rate_year+"\t"+"rm : "+rate_month);

输出:

year : 10   rate_year : 0.4 rate_month : 0.333333    
year : 10   ry : 0.4        rm : 0.333333

我认为问题只是标签栏下降的地方。

另一方面,如果目标是列对齐,最好使用 printf 和特定的列大小。参见,例如,this answer on formatting with \t

示例:

for (int i = 0; i < 12; ++i) {
        System.out.printf("year : %3d rate_year : %6f rate_month : %-6f\n", 
                i,
                rate_year,
                rate_month);
}

输出:

year :   8 rate_year : 0.400000 rate_month : 0.333333  
year :   9 rate_year : 0.400000 rate_month : 0.333333      
year :  10 rate_year : 0.400000 rate_month : 0.333333  
year :  11 rate_year : 0.400000 rate_month : 0.333333