【问题标题】:How to exit the program with a letter如何用字母退出程序
【发布时间】:2014-04-09 15:05:27
【问题描述】:

我正在尝试创建一个程序,它会在输入给定字母时进行一些处理并退出。

//1.00usd = .727751euro
int reset = 0;
while(reset == 0)
{
    double euro;
    double ems;

    String input = JOptionPane.showInputDialog(null,"Enter Amount of US Dollar: ");

    ems = Double.parseDouble(input);

    if (ems < 0)
    {
        JOptionPane.showMessageDialog(null, "Please enter a real amount of money");
        reset = 0;
    }

    if (ems >= 0)
    {
        euro = .727751;
        ems = ems*euro;
        ems = ems*100;
        ems = Math.round(ems);      
        ems = ems/100;

        JOptionPane.showMessageDialog(null,"Amount in euros: € " + ems);
    }
}

这个程序是将美元转换为欧元,我想知道如何在输入字母“Q”时让程序退出。

这是一个对象类,所以我还在学习。

【问题讨论】:

  • 我会做的最快的事情是:if(input.equals("Q"){System.exit("1");}
  • 我想你打错了:System.exit() 接受一个整数作为参数,而不是一个字符串。
  • 这真的是一个swing应用还是一个带有JOptionPanes的控制台程序?
  • Angelo Immediata 谢谢它的工作

标签: java swing converter currency


【解决方案1】:

有点像

String input = JOptionPane.showInputDialog(null,"Enter Amount of US Dollar: ");

if( input.equals("Q") ) // but the case is important here
{
    System.out.println("Bye bye");
    System.exit(0);
}
ems = Double.parseDouble(input);

【讨论】:

    【解决方案2】:

    如果你的问题是“如何退出程序”,你可以调用

    System.exit(0);
    

    当用户按下一个键时。 如果你只是想“退出”你所在的循环,设法让条件为真,或者使用“break”(但在你的情况下你不应该需要它)。

    【讨论】:

      【解决方案3】:

      while 循环中添加此if 语句。

      if(inputString.equalsIgnoreCase("q")) {
          System.exit(0);
      }
      

      【讨论】:

      • break 应该避免,因为它使代码不易阅读。为什么不在循环条件中使用布尔值?
      • 我是这样学的。但是好的,如果 while 循环不必满足任何其他条件,那么可以很容易地使用布尔值。
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2022-12-19
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-02-09
      • 1970-01-01
      相关资源
      最近更新 更多