传递参数中的数组对象

时间:2013-04-16 00:38:39

标签: java arrays methods

我是java的新手,我想知道,我们怎样才能将数组对象作为参数传递给方法。让我们说如果我有:

public void sortArray(A[7])

我应该在括号之间放什么?它应该是A[length of array]还是什么?

6 个答案:

答案 0 :(得分:3)

当您将数组作为参数传递时,其长度以及存储在其中的内容将被传递,因此您无需专门指定长度。有关实现,请参阅以下示例:

将int数组作为参数接收的方法的简单示例:

public void takeArray(int[] myArray) {
    for (int i = 0; i < myArray.length; i++) { // shows that the length can be extracted from the passed in array.
        // do stuff
    }
}

你会这样称呼这个方法:

假设你有一个像这样的数组:

int[] someArray = {1, 2, 3, 4, 5};

然后用以下方法调用上述方法:

takeArray(someArray);

答案 1 :(得分:1)

只需将数组传递给方法即可。你无需提及任何尺寸。

void sortArray(int[] array) {
  // Code
}

//调用方法并传递此数组。

int[] array = new int[10];
sortArray(array);

答案 2 :(得分:0)

例如你有说法的程序:

public void sortArray(typeArray[] A){
 //code
 //code
}

调用数组:

typeArray[] A = new typeArray[N]; //N is number of array you want to create
searchArray(A); //this how I call array

答案 3 :(得分:0)

您只需将数组名称传递给方法。

int[] a = new int[10];

...

bar(a);

其中bar的定义如下:

void bar(int[] a)
{
    ...
}

答案 4 :(得分:0)

这样你就可以传递一个数组

int[] a = new int[100];
myFunction(a);

 public void myFunction(int[] a){
       for(int i =0; i< a.lenght();i++){

                System.out.println(i);

              }

       }

答案 5 :(得分:0)

如果您不希望将数组命名为:

,也可以创建匿名数组
public void array(int arr[])
{
    // code handling arr
}

现在,对于上面的方法,您可以传递一个数组对象而不创建它:

public static void main(String[] args)
{
   array(int[] {1,2,3,4,5});
}

这也称为未命名数组或匿名数组。无需为按值调用创建数组。如果您不再需要main()方法中的该数组,则可以使用未命名的数组。这有助于节省内存。谢谢你