Java 这个字符串格式化程序行有什么问题?

Java 这个字符串格式化程序行有什么问题?,java,string.format,Java,String.format,ints:今年、本月、本日,票数剩余 字符串:eventName、EventVincement、eventType 双人票:票务价格 我已验证所有字段都已正确初始化。此行应输出为以下格式: String result = String.format( "% % % | %-20s| %25s | $%,8.2f | %5d | %-s", thisYear, thisMonth, thisDay, eventName, eventVenue, ticke

ints:今年、本月、本日,票数剩余

字符串:eventName、EventVincement、eventType

双人票:票务价格

我已验证所有字段都已正确初始化。此行应输出为以下格式:

String result = String.format( "% % % | %-20s| %25s | $%,8.2f | %5d | %-s", thisYear, thisMonth, thisDay, 
                    eventName, eventVenue, ticketPrice, ticketsRemaining, eventType);

格式化程序不完整,但我尝试运行它时失败,因此其中存在一些语法错误。我对格式化程序不是很在行。

您应该确保总是在
%
之后添加类型,在这种情况下,它是
%d

2012-01-20 | Penguins-Capitals    |      CONSOL Energy Center | $   92.35 |    15 | NHL
2012-08-05 | Chickenfoot          |    Riverplex Amphitheatre | $   62.50 | 1,273 | Concert

为了制作一个
而不是
请观看此节目。

谢谢,但当我尝试调试修改后的格式化程序时,仍然会出现致命错误。“$%”,8.2f”字段的格式是否正确?否,应为$%4.3f或$%.3f,这取决于“,”之前的字符,仍然是不允许的。这是整个类(独立的)
String result = String.format( "%4d-%02d-%02d | %-20s| %25s | $%.3f | %5d | %s", thisYear, thisMonth, thisDay, 
                eventName, eventVenue, ticketPrice, ticketsRemaining, eventType);