开发者

How to store an array returned by a method in Java

I want to store the array returned by a method into another array. How can I do this?

public int[] method(){
    int z[] = {1,2,3,5};
    return z;
}

When I call this method, how can I store the returned array (z) into ano开发者_JAVA百科ther array?


public int[] method() {
    int z[] = {1,2,3,5};
    return z;
}

The above method does not return an array par se, instead it returns a reference to the array. In the calling function you can collect this return value in another reference like:

int []copy = method();

After this copy will also refer to the same array that z was refering to before.

If this is not what you want and you want to create a copy of the array you can create a copy using System.arraycopy.


int[] x = method();


int[] anotherArray = method();

Do you want to make another physical copy of the array ?

Then use

System.arraycopy(Object src,  int  srcPos, Object dest, int destPos, int length)


If you want to duplicate the array, you can use [this API][1]:

http://java.sun.com/javase/6/docs/api/java/util/Arrays.html#copyOf(int[], int)


Try :-

int arr[]=mymethod();

//caling method it stores in array

public int[] mymethod()
{

   return arr;

}


Are you sure you have to copy?

int[] myArray = method();  // now myArray can be used 
0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜