当我只想在Java中使用大于5的值时,如何返回数组

时间:2012-09-30 18:26:26

标签: java arrays

说我有阵列

int[] numbers = {1, 2, 3, 6, 1, 7, 9, 8, 12, 1, 8};

我想编写一个只返回5以上值的方法。我无法弄明白。

我唯一能做的就是返回每一个值,我似乎无法将返回整数赋值为仅使用大于5的值。

3 个答案:

答案 0 :(得分:5)

以下是您需要遵循的步骤: -

  • Iterate在数组上并访问每个元素
  • 对于每个元素,检查它的值是否为greater than 5
  • 如果大于5,则可以将其添加到temporary array
  • 在迭代结束时,您可以return temporary array

但是,如果使用数组,则必然会创建与原始数组大小相同的临时数组。这可能会浪费内存,尤其是当您找不到任何大于5的元素时..

更好的选择是去ArrayList,你可以动态创建,并可以动态添加元素。因此你不必担心大小..查看{{1有关更多信息..

答案 1 :(得分:1)

你也应该返回一个数组。

ArrayList<Integer> getGreaterThanFive(int[] numbers)
{
    ArrayList<Integer> result = new ArrayList<Integer>();
    for (int number : numbers)
    {
        if (number > 5)
        {
            result.add(number);
        }
    }
    return result;
}

答案 2 :(得分:1)

你去吧

    int[] numbers = {1, 2, 3, 6, 1, 7, 9, 8, 12, 1, 8};
    List<Integer> list = new ArrayList<Integer>();
    for(int i=0; i<=numbers.length-1; i++ ){
        if(numbers[i]>5){
            list.add(numbers[i]);
        }
    }
    System.out.println("List :"+list);