9

私はまだJavaで始めています-そして、これに関するガイダンスは素晴らしいでしょう。私は基本的に、配列を作成してから、for ループでその配列に値を代入したいと考えています。現時点で持っているコードは次のとおりです。

int i;
int[] testarray = new int[50];

for (i = 0; i <=50; i++) {  
testarray[i]=i;
}

私がやりたいのは、各エントリの反復回数を配列にすることだけです (この方法を使用)。それは本当に単純なことですが、基本を学んでいる間に何か重要なことを見逃しているように感じます! ありがとう!

4

5 に答える 5

17

停止条件以外はすべて問題ありません。

for (i = 0; i < 50; i++) {  

配列のサイズは 50 で、インデックスは 0 から始まるため、最後のインデックスは 49 です。

のスコープを縮小し、iどこでも長さをハードコーディングしないようにし (原則を繰り返さないでください)、キャメルケースの命名規則を尊重する必要があります。

int[] testArray = new int[50];

for (int i = 0; i < testArray.length; i++) {  
    testArray[i]=i;
}
于 2012-07-15T20:01:10.513 に答える
6

配列には 50 個の要素があり、ループは 51 個の要素 (0 から 50) を超えています。

コードを次のように変更するだけです。

int[] testarray = new int[50];

for (int i = 0; i < 50; i++) {  
    testarray[i] = i;
}

またはそれ以上:

int[] testarray = new int[50];

for (int i = 0; i < testarray.length; i++) {  
    testarray[i] = i;
}
于 2012-07-15T20:00:56.363 に答える
0

50 をハードコーディングする代わりに、配列の長さを使用します。

for (i = 0; i <testarray.length; i++) 
于 2012-07-15T20:03:17.423 に答える
0
    //Create a function that takes two numbers as arguments (num, length) and returns
    // an array of multiples of num until the array length reaches length.
    package ArrayPractice;

    public class Question1 {

        //Creating array method
        public int[] arrayofMultiples(int number, int demo) {
            int[] testing = new int[demo];
            int y = 1;
            int z = number;
            for (int i = 0; i < testing.length; i++) {
                number = z * y;
                testing[i] = number;
                y++;
            }
            return testing;
        }

        public static void main(String[] args) {
            Question1 question1 = new Question1();
            // Creating an array to get the get values of array method
            int[] t1 = question1.arrayofMultiples(17, 6);
            for (int i : t1) {
                System.out.println(i);
            }
        }
    }
于 2021-08-30T19:45:12.800 に答える