小编Nau*_*ear的帖子

java.util.IllegalFormatConversionException with java.util.Formatter

我遇到了格式说明符的问题.这是否意味着我使用的%d?

public static void main(String[] args) 
{ 
   double y, x;

    for (x = 1.0; x <= 7.0; x+=0.1)
    {
        y = x * x - 5 * x + 6;
        System.out.printf("x = "+x+", y = %d", y);
        System.out.printf("\n");
    }

}
Run Code Online (Sandbox Code Playgroud)

这就是代码,这里是输出:

Exception in thread "main" java.util.IllegalFormatConversionException: d != java.lang.Double
x = 1.0, y =    at java.util.Formatter$FormatSpecifier.failConversion(Formatter.java:4045)
    at java.util.Formatter$FormatSpecifier.printInteger(Formatter.java:2748)
    at java.util.Formatter$FormatSpecifier.print(Formatter.java:2702)
    at java.util.Formatter.format(Formatter.java:2488)
    at java.io.PrintStream.format(PrintStream.java:970)
    at java.io.PrintStream.printf(PrintStream.java:871)
    at wilson_hw03a.java.Wilson_hw03aJava.main(Wilson_hw03aJava.java:15)

Java Result: 1
Run Code Online (Sandbox Code Playgroud)

我究竟做错了什么?更好的是,错误是什么?

java

2
推荐指数
2
解决办法
1850
查看次数

标签 统计

java ×1