我这里有一个循环,读取一个双精度值,但是对于程序,我需要将其与字符q进行比较,如果用户输入q,则循环将结束。我不确定在这里做什么。

while (currencyValue != 'q')
     {
         System.out.printf("Formatted currency value: $%,.2f\n", currencyValue);
         System.out.print("Enter a currency value or enter q to quit: ");
         currencyValue = stdIn.nextDouble();
     }


谢谢你的帮助

最佳答案

编辑,如果您按q则忘记退出循环

编辑#2我会放所有东西,以防万一:)

尝试这个

import java.util.Scanner;
public class Currency
{
  public static void main(String args[])
  {
      Scanner stdIn = new Scanner(System.in);
      String currencyValue=null;
      while (!currencyValue.equals("q"))
      {
          System.out.print("Enter a currency value or enter q to quit: ");
          currencyValue = stdIn.nextLine();
          if(currencyValue.equals("q")) {
              System.out.println("You pressed q, have a nice day");
              return;
          }
          System.out.printf("Formatted currency value: $%,.2f\n", Double.parseDouble(currencyValue));
      }
   }
}

09-13 11:19