0
此代碼在插入半徑值後給我一個錯誤。爲什麼我的toString JOptionPane沒有顯示?
「異常線程 」main「 java.util.IllegalFormatConversionException:d = java.lang.Double中的」
import javax.swing.*;
public class TestCircle {
public static void main(String[]args)
{
String rad1 = JOptionPane.showInputDialog("Please enter circle 1 radius: \n");
Circle circle1 = new Circle();
circle1.setRadius(Integer.parseInt(rad1));
String rad2 = JOptionPane.showInputDialog("Please enter circle 2 radius: \n");
Circle circle2 = new Circle(Integer.parseInt(rad2));
JOptionPane.showMessageDialog(null,circle1.toString());
}
public String toString()
{ return String.format("Radius:%d\nDiameter:%d\nCircumference:%.2f\nArea%.2f\n",getRadius(),circumference(),area());
}
添加完整的堆棧跟蹤和相關的代碼 – Jens
異常線程 「main」 java.util.IllegalFormatConversionException:d = java.lang.Double中 \t在$的java.util.Formatter FormatSpecifier.failConversion(格式化。 Java的:4045) \t在$的java.util.Formatter FormatSpecifier.printInteger(Formatter.java:2748) \t在$的java.util.Formatter FormatSpecifier.print(Formatter.java:2702) \t在的java.util.Formatter .format(Formatter.java:2488) \t at java.util.Formatter.format(Formatter.java:2423) \t at java.lang.String.format(String.java:2792) \t at Circle.toString(Circle.java:52) \t at TestCircle.main(TestCircle.java:21) –
添加'Circle .toString'到你的問題使用編輯功能。不作爲評論 – Jens