我正在努力输出数组的元素,并适当地左右对齐它们,但是我很难使输出正确对齐。这是我截至目前的输出-
Houston TX 2009834
Detroit MI 925051
Indianapolis IN 783612
Washington DC 570898
Burlington VT 180000
如您所见,第三行有两个空格。有没有办法专门访问这一行输出并正确格式化?我要打印的行是
for(int i = 0; i < pop.length; i++){
System.out.printf("%-10s%5s%10d\n", city[i], state[i], pop[i]);
}
最佳答案
尝试增加printf
中指示的字符数
"%-10s%5s%10d\n"
这会将城市名称填充为10个字符。更改为
"%-15s%5s%10d\n"
为了能够处理最多15个字符(或所需长度)的城市名称。