Как мне постоянно бежать \t в Java?

Я искал те же вопросы.( Как мне избежать строки в Java?), Но я не могу решить свою проблему.

часть исходного кода System.out.println("year: "+year+"\t"+"rate_year: "+rate_year+"\t"+"rate_month: "+rate_month);

но когда я распечатаю это.,, год: 10 курс_год: 0.4 курс_месяц: 0.03333333333333333

Сначала выводится "\ t", почему все "\ t" не адаптированы???

1 ответ

Решение

"\ 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 и конкретные размеры столбцов. Смотрите, например, этот ответ о форматировании с \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  
Другие вопросы по тегам