-3

私はただ楽しみのために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);



    }
}
4

1 に答える 1

3

文字列を比較するときに==useを使用する代わりに。.equals()

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

(また)

入力を整数に変換して行う==

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

==参照の等価性を探します。equals()オブジェクトの等価性を探します。

于 2012-11-06T18:45:32.943 に答える