0

実際にJavaプログラムを自分でやろうとするのはこれが初めてです。

数値が偶数かどうかを示すプログラムを作成しようとしています。何らかの理由で私のプログラムが動作しません。double が必要であると言い続けていますが、int を提供しています。文字列を double に変更することになっているこの parsedouble がありますが、間違って書かれていると思います。誰でも理由を教えてもらえますか?

package javaapplication2;

import javax.swing.JOptionPane;
public class JavaApplication2 {

    public void main(String[] args) {
        int a;
        String number;
        number = JOptionPane.showInputDialog("What is your number");
        number = Double.parseDouble(number);
        a = number
        if ( ( number % 2 ) == 0 );
            System.out.println("That is an even number");     

        System.exit(0);
    }
}
4

3 に答える 3

2
number = Double.parseDouble(number); // error.

number は double ではなく文字列として定義されます。double解析された値を保持する変数が必要になります。

Double myDouble = Double.parseDouble(number);
于 2013-10-05T02:29:01.153 に答える
1

そのコードにはいくつかの問題があります。

  1. 行の後にセミコロンが必要a = numberです。
  2. コード

    number = Double.parseDouble(number);
    

    数値は文字列ではないため、機能しません。あなたの言いたいことは次のとおりです。

    a = Double.parseDouble(number);
    
  3. この関数は、浮動小数点値である をparseDouble返します。それを整数値であるdoubleに割り当てることはできません。代わりintに使用する必要があります。Integer.parseInt(number)
  4. main関数は でなければなりませんstatic
  5. ifステートメントの後にセミコロンがあってはなりません。

これらすべての問題があるため、これが実際のコードである可能性は低いと思われます。

これらすべての修正を組み込んだコードは次のとおりです。

package javaapplication2;

import javax.swing.JOptionPane;

public class JavaApplication2 {
    public static void main(String[] args) {
        int a;
        String number;
        number = JOptionPane.showInputDialog("What is your number");
        a = Integer.parseInt(number);
        if ( ( a % 2 ) == 0 )
             System.out.println("That is an even number");
        System.exit(0);
    }
}    
于 2013-10-05T02:32:21.270 に答える
1

以下は、番号をチェックする完全なコードであり、コードのどこに間違いがあるかoddevenわかります。

import javax.swing.JOptionPane;


public class JavaApplication2 {
public static void main(String[] args) {
    int a;
    String number;
    number = JOptionPane.showInputDialog("What is your number");

 //Double d = Double.parseDouble(number);//For Double

 a=Integer.parseInt(number);//Because of you declared a as int

    if ( ( a % 2 ) == 0 )//;
         System.out.println("That is an even number");

    else{
        System.out.println("That is an odd number");
        }
    System.exit(0);
}
}

以下はoutput1です。

出力1

出力2

出力2

出力3

3出力

出力4

5出力

于 2013-10-05T02:42:31.813 に答える