【问题标题】:JOptionPane run not workingJOptionPane 运行不工作
【发布时间】:2017-02-02 14:15:26
【问题描述】:

我正在开发一个程序,但我不明白该程序有什么问题,我试图让它工作,但每次我运行它并输入答案时,它都会在回答。帮助。

import javax.swing.JOptionPane;

public class Furniture
{
   public static void main(String args[]) 
   {
       String response_1 = JOptionPane.showInputDialog(null, "Type of Table - 1)Pine Wood, 2)Oak, 3)Mahogany");
       int type_of_wood = Integer.parseInt(response_1);
      String response_2 = JOptionPane.showInputDialog(null, "Size of table - 4)Small, or 5)Large");
      int size = Integer.parseInt(response_2);
      int price_of_wood = 0;
      int price_of_table = 0;
       switch(type_of_wood)
      {

       case 1:
          price_of_wood = 100;
          break;

       case 2:
          price_of_wood = 225;
          break;

       case 3:
          price_of_wood = 310;
          break;

      case 4:
         price_of_table = 0;
         break;

      case 5:
         price_of_table = 35;
         break;

       default:
          JOptionPane.showMessageDialog(null, "Unknown Number entered.");
    }
    JOptionPane.showMessageDialog(null, "The price is " + price_of_wood + price_of_table + " dollars");
    }
}

【问题讨论】:

  • "The price is " + price_of_wood + price_of_table + " dollars" 这可能是问题所在。您的整数在输出中是一种“添加”。试试"The price is " + price_of_wood += price_of_table + " dollars"。它可能会解决您的问题

标签: java computer-science


【解决方案1】:

当您在println() 中使用int、float 等变量和String 来显示输出时,它们会被连接而不是添加或您尝试执行的任何操作。因此,首先评估要输出的表达式。试试这个,

 int price = price_of_wood + price_of_table;
 JOptionPane.showMessageDialog(null, "The price is " + price + " dollars");

【讨论】:

  • 我也遇到了问题,无法正确读取案例 5?你会知道吗?我没有正确阅读的意思是它不会读取数字。
  • 即使在案例 5 中,您也在使用 type_of_wood 变量。如果输入正确,type_of_wood 将永远不会是 5。尝试使用两个switch,一个用于type_of_wood,另一个用于size。
  • @GeneralWolf 如果这解决了您的问题,则准确地将其标记为已接受,以便其他人也将遵循此答案。谢谢
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2014-05-23
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-04-07
相关资源
最近更新 更多