大于n阵列

时间:2017-02-16 00:37:28

标签: java arrays class methods

我一直在努力编写一个接受两个参数的方法:一个数组和一个数字n,所有这些都假定为整数。它还应该显示数组中大于n的数字。

这是我第一次使用数组,并尝试做这类事情。所以,我不确定该怎么做,或者如何用这个问题来做。

import java.util.Random; // Initialize random class
import java.util.Scanner; //Create the scanner class

public class ArrayNumbers {

    public static void getNumbers(int computerArray[], int n){

        for(int element : computerArray){
            if(n < element){
            System.out.println(element);
            }
        }
    }

    public static void main(String[] args) {
        int computerArray1[] = new int[100];
        Random rand = new Random();

        for(int count1=10; count1>1; count1++){
            computerArray1[n] = rand.nextInt(100);
            getNumbers(computerArray1[1],1);
       }
    }
}

2 个答案:

答案 0 :(得分:1)

将您的主要内容更改为(请参阅内联评论)

public static void main(String[] args) {
    int computerArray1[] = new int[100];
    Random rand = new Random();

    for(int count1=0; count1 < 100; count1++){  // loop to 100
        computerArray1[count1] = rand.nextInt(100);  // n does not exist
   }
   // do after data is input?
   getNumbers(computerArray1,1);  // pass the whole array

}   

答案 1 :(得分:0)

    int computerArray1[] = new int[100];

根据您的数组大小为100,当count1到达100时,应用会崩溃,因为该数组只能从0-99寻址。

    for(int count1=10; count1>1; count1++){
        computerArray1[n] = rand.nextInt(100); // count1 instead of n?      
        // computerArray1[1] is just the int at index 1 in the array
        getNumbers(computerArray1[1],1); 
   }

所以你可能打算做的就是这个......

    for(int count1=0; count1<100; count1++){
        computerArray1[count1] = rand.nextInt(100);
        getNumbers(computerArray1,1);
   }