0

こんにちは、ユーザーにいくつかの値を入力するように求めるメソッドを書いています。これらの値を保存し、配列をプログラムに返したいと思います。これは私が書いたコードです

public static int[] readInQuarters(String[] firstName, String[] lastName)
{//method to read in quarters
    int[] quarter1= new int[firstName.length];
    int[] quarter2= new int[firstName.length];
    int[] quarter3= new int[firstName.length];
    int[] quarter4= new int[firstName.length];

    Scanner input=new Scanner(System.in);
    for(int i=0;i<firstName.length;i++){
        System.out.printf("Enter the 1st quarter figure(to the nearest million) for %s %s :",firstName[i], lastName[i]);
        quarter1[i]= input.nextInt();
    }
    for(int i=0;i<firstName.length;i++){
        System.out.printf("Enter the 1st quarter figure(to the nearest million) for %s %s :",firstName[i], lastName[i]);
        quarter1[i]= input.nextInt();
    }
    for(int i=0;i<firstName.length;i++){
        System.out.printf("Enter the 2nd quarter figure(to the nearest million) for %s %s :",firstName[i], lastName[i]);
        quarter2[i]= input.nextInt();
    }
    for(int i=0;i<firstName.length;i++){
        System.out.printf("Enter the 3rd quarter figure(to the nearest million) for %s %s :",firstName[i], lastName[i]);
        quarter3[i]= input.nextInt();
    }
    for(int i=0;i<firstName.length;i++){
        System.out.printf("Enter the 4th quarter figure(to the nearest million) for %s %s :",firstName[i], lastName[i]);
        quarter4[i]= input.nextInt();
    }

    return quarter1;
    return quarter2;
    return quarter3;
    return quarter4;
}

return Quarter1 とその他は unreachable ステートメント エラーであることがわかります。私はなぜ混乱しているのですか?

4

5 に答える 5

0

return quarter1メソッドを停止し、値を返します。

複数の値を返す必要がある場合は、すべての値を保持するクラスを作成できます

また

すべての値が同じタイプの場合は、Arrayまたはを使用できますCollection

于 2013-11-13T12:50:41.917 に答える
0

returnステートメントは1つしか記述できず、returnステートメントはメソッドの最後の行にする必要があります。したがって、書いているときreturn quarter1;、この行の後のすべてのステートメントには到達できません

メソッドから値を返す方法の詳細については、このoracle ドキュメントを参照してください。

于 2013-11-13T12:49:15.293 に答える
0

メソッドは 1 つのreturnステートメントのみを実行します。それが実行されると、他のものは無視されます。4 つのアイテムを返したい場合は、それらをある種のコンテナ オブジェクト、たとえばint[]. それは次のようになります。

return new int[][]{quarter1, quarter2, quarter3, quarter4};
于 2013-11-13T12:49:52.653 に答える