如何接受字母输入并使用if语句来确定变量将等于什么?

时间:2014-09-11 18:45:56

标签: java string if-statement input

我为朋友将用于他的业务的超级简单程序制作测试代码。如果顾客想要薄荷,他们会输入 y 如果没有,他们会输入 n

那么我可以输入什么来使这项工作?

import java.lang.Math;
import java.util.Scanner;

public class Kloud1{

  public static void main(String[]args){

    boolean exitloop = false;

    while (!exitloop){

      Scanner input=new Scanner(System.in);

      System.out.println("KK  KK LL       OOOOO  UU   UU DDDDD");
      System.out.println("KK KK  LL      OO   OO UU   UU DD  DD  ");
      System.out.println("KKKK   LL      OO   OO UU   UU DD   DD ");
      System.out.println("KK KK  LL      OO   OO UU   UU DD   DD ");
      System.out.println("KK  KK LLLLLLL  OOOO0   UUUUU  DDDDDD  ");

      System.out.print("Enter amount of people in group:");
      double p= input.nextDouble();
      System.out.print("Enter amount of desired Hookahs");
      double h= input.nextDouble();
      System.out.print("Would they like to add mint? (enter y or n) ");
      String mint = input.nextLine();
      if (mint.equals("y")){
        int minty=5;
      }
      else if (mint.equals("n")){
        int minty=0;
      }
      double minty = (String minty);
      double y = input.nextDouble();
      double t = ((p * 5) + minty + ( h * 22)) * 1.0825 ;
      System.out.println(" The total is:" + t);
      System.out.print("Press enter");

    }
  }
}

1 个答案:

答案 0 :(得分:2)

你正在宣布" int minty"在if语句中,这意味着它只能在if语句中访问。 试试这个:

...

System.out.print("Would they like to add mint? (enter y or n) ");

String mint = input.next();
double minty = 0;
if(mint.equals("y"))
    minty+=5;

double t = ((p * 5) + minty + ( h * 22)) * 1.0825 ;

...

不知道你在尝试用双y做什么,但是你没有使用它。 同样对于非十进制数字,你应该使用int而不是double,对于单个字母,你应该使用char而不是字符串。