Java 得到一个;1“;在作业输出结束时

Java 得到一个;1“;在作业输出结束时,java,Java,简单的程序,只需找到一个圆的周长,直径和面积。每当我运行程序时,它都很好,只是在区域的值后面总是有一个1或-1。例如,当使用10的半径时,我得到: 结果 圆的周长为:62.832厘米 圆的直径为:20.0厘米 圆的面积为:314.159厘米1 代码如下: import javax.swing.JOptionPane; import java.text.DecimalFormat; public class Circle { public static void main(String

简单的程序,只需找到一个圆的周长,直径和面积。每当我运行程序时,它都很好,只是在区域的值后面总是有一个1或-1。例如,当使用10的半径时,我得到:

结果
圆的周长为:62.832厘米
圆的直径为:20.0厘米
圆的面积为:314.159厘米1

代码如下:

import javax.swing.JOptionPane;
import java.text.DecimalFormat;

public class Circle {

    public static void main(String[] args)
    {
    //Declarations
    double radius;
    String getRadius;

    //Formatting
    DecimalFormat formatter = new
    DecimalFormat(".000");

    //Calculations
    getRadius = JOptionPane.showInputDialog("Enter Circle Radius In Centimeters:");
    radius = Double.parseDouble(getRadius);

    //Output
    JOptionPane.showMessageDialog(null, "Results" + 
            "\n The circumference of the circle is: " + formatter.format(2*Math.PI*radius) + " Centimeters" +
            "\n The diameter of the circle is: " + 2*radius + " Centimeters" +
            "\n The area of the circle is: " + formatter.format(Math.PI*Math.pow(radius,2)) + " Centimeters" +
            JOptionPane.INFORMATION_MESSAGE);
    }
}

您正在将
JOptionPane.INFORMATION\u MESSAGE
(正好等于1)附加到字符串中。应该是这样的:

JOptionPane.showMessageDialog(null, 
        "Results" + 
        "\n The circumference of the circle is: " + formatter.format(2*Math.PI*radius) + " Centimeters" +
        "\n The diameter of the circle is: " + 2*radius + " Centimeters" +
        "\n The area of the circle is: " + formatter.format(Math.PI*Math.pow(radius,2)) + " Centimeters", 
        "Results", 
        JOptionPane.INFORMATION_MESSAGE);

这四个参数是parent、message、title和messageType。以前,您无意中使用了双参数版本(父级,消息),并将消息类型附加到消息中

就是这样。我花了一秒钟才明白这四个参数是什么意思,但后来我意识到逗号的作用。你让我对这件事的看法完全不同,所以谢谢你。