当前位置: 首页 > 面试题库 >

我究竟做错了什么?Java IllegalFormatConversionException

尉迟京
2023-03-14
问题内容

我有一些代码来计算圆的属性:

package circleinfo;

import java.util.Scanner;

public class Circleinfo {

    public static void main(String[] args) {

        Scanner input=new Scanner(System.in);
        int r;

        System.out.print("Enter the radius of the circle to find circumference, diameter, and area\n");

        r = input.nextInt();

        System.out.printf("The circumference is %f\n",(2*r*Math.PI));
        System.out.printf("The diameter is %f\n",(r*2));
        System.out.printf("The area is %f\n",(r*r*Math.PI));

    }
}

它计算周长,但不计算其余部分。

Enter the radius of the circle to find circumference, diameter, and area

10

The circumference is 62.831853

Exception in thread "main" java.util.IllegalFormatConversionException: f != java.lang.Integer
    at java.util.Formatter$FormatSpecifier.failConversion(Formatter.java:4045)
    at java.util.Formatter$FormatSpecifier.printFloat(Formatter.java:2761)
    at java.util.Formatter$FormatSpecifier.print(Formatter.java:2708)
    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 circleinfo.Circleinfo.main(Circleinfo.java:30)
The diameter is Java Result: 1

问题答案:

r是一个intr*2也一个int,这意味着不能在第二个打印语句%f中使用。试试%d那里。

回想一下,这%f是浮点数,而%d整数。在的文档中对此进行了概述Formatter(请参阅“
格式化字符串语法”)。



 类似资料:
  • 问题内容: 因此,我试图掌握在Android中使用自定义控件的方法。但是我的应用在尝试创建活动时崩溃。这是代码: 这是布局xml: 问题答案: 您将需要实现以下构造函数: 例如,尝试执行以下操作: 您将在logcat中获得以下内容: 因此要将这些XML属性传递给Super类(EditText),您必须重写这些构造函数。 希望对您有所帮助。

  • 问题内容: 我遇到了使用方法的一段代码。不知道这叫什么,我很难找到它。 这是我尝试了解的内容: 结果: 但是,我认为这是在运行时发生的,它会告诉编译器确实是一个字符串,并且可以用来告诉编译器变量是某种类型的。我的理解正确吗? 游乐场 问题答案: 被称为 类型断言 。如 有效围棋中所述 : 类型断言采用接口值并从中提取指定的显式类型的值。 因此,是的,您从类型断言中获得的值不是接口值,而是显式类型。

  • 问题内容: 我在jquery图像滑块演示中找到了reset.css文件,但它从未包含在主index.html文件中。应该做什么,更重要的是,您将它放在哪里?你把它之前 任何引用的样式表()? 这是reset.css内部的代码 问题答案: 最初,关于样式的工作方式还没有标准化,每个浏览器都实现了自己认为正确的方式。您在IE中看到太多有关样式错误的问题的原因之一是,因为IE是样式方面与其他浏览器最不相

  • 问题内容: 因此,我发现了有关JQuery的类似问题,您无需在其中进行解析。由于我使用的是AJAX XMLHttpRequest,据我所知,解析是必要的。错误在行上给出: 错误: 功能的相关部分: 返回的JSON如下所示(不包含换行符): JSONLint表示以上内容有效。我想我将看看XMLHttpRequest是否做任何奇怪的事情。Firefox继续运行(即使firebug显示错误),IE9仍在

  • 我正在做一个项目,我的意图是运行一个玉米作业,并发送邮件给我的朋友,祝他们生日,我能够从MySQL DB获取电子邮件,并将其与当前日期进行比较,但当涉及到发送电子邮件时,我得到NullPointerException。 我确信应用程序属性没有问题,我在其他项目中也使用了它们,它们的功能正常 这是我得到以下信息的错误

  • 11:15:57创建表如果不存在tblcompany(companyid INT(11)无符号NOT NULL,custfirst VARCHAR(50),custlast VARCHAR(50),company VARCHAR(50),custphone VARCHAR(50), custemail VARCHAR(50),主键(companyid),索引(companyid),约束外键(com