0

私は Java に比較的慣れていませんが、このプログラムを作成することに決めました。メソッドの操作方法を学習するのに十分簡単なタスクに思えたからです。とにかく、これは現在の私のプログラムです。

    import javax.swing.JOptionPane;
    public class smallAverage{
    public smallAverage getsmall() {

            String sd1 = JOptionPane.showInputDialog("What is the first number?");
    double sdx = Double.parseDouble (sd1);
            String sd2 = JOptionPane.showInputDialog("What is the second number?");
    double sdy = Double.parseDouble (sd2);
            String sd3 = JOptionPane.showInputDialog("What is the third number?");
    double sdz = Double.parseDouble (sd3);

            return double sdx;
    return double sdy;
    return double sdz;
    }

    public smallAverage getavg() {

            String ad1 = JOptionPane.showInputDialog("What is the first number");
    double adx = Double.parseDouble (ad1);
            String ad2 = JOptionPane.showInputDialog("What is the second number");
    double ady = Double.parseDouble (ad2);
            String ad3 = JOptionPane.showInputDialog("What is the third number");
    double adz = Double.parseDouble (ad3);


            return double adx;
    return double ady;
    return double adz;
    }

     public smallAverage work() {
    double small = Math.min(sdx, sdy, sdz);
    double avg = (adx + ady + adz) / 3;

            System.out.println("The smallest of "+ sdx+ sdy+ sdz+ " is " + small + ", and the average of"+ adx+ ady+ adz+ " is "+ avg+ ".");
    }
    }

ここで行われている実際の計算は、私には何の意味もありません。私が学びたいのは、コードの動作方法です。このコードをさまざまな方法で書き直そうとしましたが、これが最も正しいようです。なぜそれがうまくいかないのか、私にはわかりません。ターミナルからコンパイルしようとすると、次のようになります。

    smallAverage.java:12: error: '.class' expected
                    return double sdx;
                                  ^
    smallAverage.java:13: error: '.class' expected
            return double sdy;
                          ^
    smallAverage.java:14: error: '.class' expected
            return double sdz;
                          ^
    smallAverage.java:27: error: '.class' expected
                    return double adx;
                                  ^
    smallAverage.java:28: error: '.class' expected
            return double ady;
                          ^
    smallAverage.java:29: error: '.class' expected
            return double adz;
                          ^
    6 errors

どんな助けでも大歓迎です

4

2 に答える 2

3

を返すと、もう指定子を入力する必要はありません:

 return double adx;
 return double ady;
 return double adz;

する必要があります

 return adx;
 return ady;
 return adz;

他の3つも同じエラー。

その間。

public smallAverage getsmall()

その関数からクラスオブジェクトを返していないため、間違っています。異なるデータ パスがなければ、3 つの return ステートメントを 1 つの関数にまとめて配置することはできません。例えば:

 return adx;
 return ady;  //two return statements below will never be reached.
 return adz;

これらは基本的なエラーです。おそらく、いくつかの基本的な Java チュートリアルを表示する必要があります: Java チュートリアル

于 2013-04-13T01:51:03.187 に答える
0

あなたはちょうどする必要がありますすなわち

return sdx;

sdx の宣言時に既に定義しているため、type は必要ないためです。

プログラムを実行しなくてもコンパイルエラーが発生するため、Eclipse などの IDE を使用することをお勧めします。開発に非常に役立ちます

于 2013-04-13T01:53:46.677 に答える