java - 格式字符串错误参数过多

标签 java

我在使用格式字符串时遇到问题。

我收到格式字符串中参数过多的错误(找到 9 个,预期 8 个)。我也尝试过重新格式化其他程序,但它们也给出了与此相同的错误。

代码:

public class FormattingOutput {
    public static void main(String args[]) {
        String module1Name = "Mathematics", module2Name = "Introduction to Programming", module3Name = "Web Design";
        int module1Students = 64, module2Students = 84, module3Students = 62;
        float module1Mark = 72.031f, module2Mark = 61.845f, module3Mark = 72.774f;

        String formatString = String.format("%-35s%-10d%.1f\n%-35s%-10d.1f\n%-35s%-10d%.1f",module1Name,module1Students,module1Mark,module2Name,module2Students,module2Mark,module3Name,module3Students,module3Mark);

        System.out.println("Module Name                     #Students   Average Mark\n"   + formatString);
    }
}

最佳答案

重新格式化:

String formatString = String.format("
%-35s
%-10d
%.1f\n
%-35s
%-10d.1f\n
%-35s
%-10d
%.1f",
module1Name,
module1Students,
module1Mark,
module2Name,
module2Students,
module2Mark,
module3Name,
module3Students,
module3Mark);

你忘记了一个“%”字符,不是吗:

String formatString = String.format("
%-35s
%-10d
%.1f\n
%-35s
%-10d
%.1f\n
%-35s
%-10d
%.1f",
module1Name,
module1Students,
module1Mark,
module2Name,
module2Students,
module2Mark,
module3Name,
module3Students,
module3Mark);

关于java - 格式字符串错误参数过多,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34071241/

相关文章:

JavaMail - 电子邮件中的主题和收件人字段为空

java - Hibernate MySQL 查找未映射的表和列

java - 图形的透视变换

java - 在日志系统中分离生命周期事件的适当方法是什么?

java - 即使绘制新文本,也设置一次 swing 应用程序的默认字体

java - Mockito.verify 的 AssertJ 解决方案

java - 什么对象可以让我在屏幕上同时显示两个不同的组件?

java - 使用java从apache solr获取json对象进行自动完成

java - 获取选定的索引列表标题blackberry java

java - Java 中是否有任何 map 实现可以给我一个 map ,其中条目的排序方式与我放入它们的方式相同?