线程 "main" java.lang.NumberFormatException 中的异常:空字符串 FloatingDecimal & parseDouble

Exception in thread "main" java.lang.NumberFormatException: empty String FloatingDecimal & parseDouble

我收到一个错误。出于某种原因,当我编译代码时错误没有出现:

//这是我得到的错误 线程 "main" java.lang.NumberFormatException 中的异常:空字符串 在 sun.misc.FloatingDecimal.readJavaFormatString(FloatingDecimal.java:1842) 在 sun.misc.FloatingDecimal.parseDouble(FloatingDecimal.java:110) 在 java.lang.Double.parseDouble(Double.java:538) 在 Project3A.main(Project3A.java:42)

    //Code starts here
    import java.util.scanner;
    import javax.swing.JOptionPane;
    import java.text.DecimalFormat;
    import java.util.Locate;
    import java.text.NumberFormat;

        public class Project3A
        {
             public static void main(String[] args)
             {
      int numloaves = 0;
      int nummilk = 0;
      double lbscheese = 0.00;
      double brdperloaf = 1.50;
      double milkperqrt = 1.00;
      double chseperlbs = 0.50;
      NumberFormat moneyFormat = NumberFormat.getCurrencyInstance(Locale.US);

      Scanner sc = new Scanner(System.in);
      System.out.println("Enter the number of loaves of bread: ");
      int numloaves = sc.nextInt();

      Scanner sc = new Scanner(System.in);
      System.out.println("Enter the number of quarts of milk: ");
      int nummilk = sc.nextInt();

      Scanner sc = new Scanner(System.in);
      System.ot.println("Enter the number of pounds of cheese: ");
      int chseperlbs = sc.nextInt();

      double brdcst = (numloaves * brdperloaves);
      double mlkcst = (nummilk * milkperqrt);
      double chsecst = (lbscheese * chseperlbs);
      double ttlcost = (brdcst + mlkcst + chsecst);

      String inputStr = JOptionPane.showInputDialog(null, "Enter number of apples");
      double value = Double.parseDouble(" ");

      System.out.println("Cost of Bread: " + brdcst);
      System.out.println("Cost of Milk: " + mlkcst);
      System.out.println("Cost of Cheese: " + chsecst);

      double d = 1.234567;
      DecimalFormat df = new DecimalFormat("#.##");
      JOptionPane.showMessageDialog(null, "Total Cost of bread, milk and cheese is " + df.format(d));
      System.out.println(df.format(d));
      }
}

这无效Java:

JOptionPane.showInputDialog,"Enter number of apples";

调用任何方法时,您必须在括号内包含适当的参数,例如

myMethodCall(1, 2, 3);

您的调用没有使用括号并且没有意义。阅读 JOptionPane API 以了解您可能需要哪些参数。