我的计划不会做我想做的事

时间:2012-11-06 18:44:36

标签: java

我只是在学习Java以获得乐趣,并且发现这个论坛在某些时候非常有用! :)

现在,我有一个问题,我无法让应用程序执行我想要它做的事情。 我只是想让它运行“选择”,然后从我的输入选择我希望它运行例如ovning3(这是“转换器”)但它只是在我输入我的选择“3”后退出..

我做错了什么?这是我的第一个带有几个“实例”的应用程序..我的逻辑错了吗?

import static javax.swing.JOptionPane.*;

public class Ovningar {


    public static void main(String[] args) {
        choice();
    }


    public static void choice(){
        String input = showInputDialog("Välj övning");
        if (input == "3")
            converter();
        if (input == "4")
            sfer();
    }

    public static void sfer() {


    }
    public static void converter() {

        String input[] = showInputDialog("Mile/Gallons?").split("/");       
        String strmiles = input[0];
        String strgallon = input[1];

        double miles = Double.parseDouble(strmiles);
        double gallon = Double.parseDouble(strgallon);

        double km = miles*1.609;
        double liter = gallon*3.785;


        showMessageDialog(null, km+"/"+liter);



    }
}

1 个答案:

答案 0 :(得分:3)

在比较字符串时,不要使用==使用.equals()

if (input.equals( "3"))
        converter();
    if (input .eqauls( "4"))
        sfer();

(或)

将输入转换为整数并执行==

    if( Integer.valueOf(input) == 3)
      {
     ......
      }

==寻找引用相等。 equals()寻找对象相等。