使用if else语句将用户输入与字符串进行比较

时间:2016-09-28 18:20:48

标签: java string compare

该程序假设要求用户输入水,空气和钢的元素。然后他们必须输入他们想要的距离。我遇到的问题是我不能让元素等于空气,所以它可以执行公式。我知道if -else是一团糟,我想弄清楚什么有效。任何答案都赞赏。

public static void main(String[] args) {

    Scanner sc=new Scanner(System.in);
    System.out.println("enter an element of water,air,or steel");           

    String element=sc.next();
    System.out.println("how far do you want it to travel, dont use any unit of measurment");
    double distance=sc.nextInt();
    double time1=distance/1100;
    double time2=distance/4900;
    double time3=distance/16400;    

            if (element.equals(air)){
                System.out.println("the time is "+time1);       }
            else if(element.equals.water)
                System.out.println("the time is "+time2);

            else if(element.equals.steel)
                System.out.println(time3);





        }

}

2 个答案:

答案 0 :(得分:2)

只需使用element.equalsIgnoreCase("air")或例如此代码:

switch (element.toLowerCase()) {
    case "air": ...
    case "water": ...
    case "steel": ...
}

答案 1 :(得分:1)

为什么在比较字符串时省略引号?这应该是它的样子:

*.gatos.com