我试图用Java格式化一行数据,这样每一列都会对齐。我正在使用标签,但它似乎不起作用。
这就是我想要做的:
System.out.printf("Town\tDate\tWind Speed\tDirection\tTemp(F)\tTemp(C)\tWind Chill(C)\tReporter\n");
System.out.printf(town + "\t" + date + "\t" + windSpeed + "\t" + direction + "\t" +
getFahrenheit(tempC) + "\t" + tempC + "\t" + getWindChillFactor(windSpeed, tempC) + "\t" +
reporterCode + "\n");更新:

发布于 2016-02-05 04:43:15
您使用的printf方法接受一个格式字符串作为第一个参数,并根据该格式解释参数。在这种情况下,您需要字符串的最小空格数。这可以通过正确的格式字符串来实现,如:
System.out.println("%20s", town);这将以最小宽度为20个字符的字符串打印城镇。有正确对齐规则,四舍五入浮点等。详情请参阅格式化程序。
发布于 2016-02-05 05:11:48
在Java 8中尝试这样做,它应该可以工作:
public class test {
public static void main(String args[]) {
System.out.printf("%-12s %-12s%-12s%-12s%-12s%-12s%-12s%s\n","Town","Date","Wind Speed","Direction","Temp(F)","Temp(C)","Wind Chill","Reporter");
System.out.printf("%-12s %-12s%-12s%-12s%-12s%-12s%-12s%s\n","Portland","12/10/15","2.50","W","36.50","2.50","1.56","PS");
System.out.printf("%-12s %-12s%-12s%-12s%-12s%-12s%-12s%s\n","orango","12/10/15","2.50","NW","36.50","2.50","1.56","PS");
System.out.printf("%-12s %-12s%-12s%-12s%-12s%-12s%-12s%s\n","calais","12/10/15","2.50","W","36.50","2.50","1.56","PS");
System.out.printf("%-12s %-12s%-12s%-12s%-12s%-12s%-12s%s\n","calais","12/10/15","2.50","W","36.50","2.50","1.56","PS");
System.out.printf("%-12s %-12s%-12s%-12s%-12s%-12s%-12s%s\n","Portland","12/10/15","2.50","W","36.50","2.50","1.56","PS");
System.out.printf("%-12s %-12s%-12s%-12s%-12s%-12s%-12s%s\n","Portland","12/10/15","2.50","W","36.50","2.50","1.56","PS");
System.out.printf("%-12s %-12s%-12s%-12s%-12s%-12s%-12s%s\n","bangor","12/15/15","2.50","W","36.50","2.50","1.56","PS");
System.out.printf("%-12s %-12s%-12s%-12s%-12s%-12s%-12s%s\n","orango","12/19/15","2.50","NW","36.50","2.50","1.56","PS");
}
}要修复更新映像,请执行以下操作:
System.out.printf("%-12s %-12s%-12s%-12s%-12s%-12s%-12s%s\n","Orono","12/15/15","2.50","W","36.50","2.50","1.56","OT");
System.out.printf("%-12s %-12s%-12s%-12s%-12s%-12s%-12s%s\n","Orono","12/19/15","3.10","NW","36.72","2.90","0.42","SS");试试上面的代码:
https://stackoverflow.com/questions/35216357
复制相似问题