Login | Register   
LinkedIn
Google+
Twitter
RSS Feed
Download our iPhone app
TODAY'S HEADLINES  |   ARTICLE ARCHIVE  |   FORUMS  |   TIP BANK
Browse DevX
Sign up for e-mail newsletters from DevX


Tip of the Day
Language: Java
Expertise: Beginner
Jan 26, 1999

Use the System.arraycopy Method to Copy Contents of Arrays

When copying the contents of one array into another, use the System.arraycopy method instead of an iterative loop. For example, consider the following arrays:
 
	int[] first = {1, 2, 3};
	int[] second = {4, 5, 6};
	int[] third = new int[first.length + second.length];
One possible way of copying the contents of the first two arrays into the third one is to use loops, such as:
 
	for (int i = 0; i < first.length; i++)
		third[i] = first[i];
	for (int i = 0; i < second.length; i++)
		third[first.length + i] = second[i];
However, a better way of accomplishing the same task is to use the System.arraycopy method as in the following example:
 
	System.arraycopy(first, 0, third, 0, first.length);
	System.arraycopy(second, 0, third, first.length, second.length); 
Besides accomplishing the same result with less code, this approach has the added advantage of being faster, since arraycopy is implemented as a native method, and will generally execute faster than equivalent code written in Java. This advantage can be particularly significant with large arrays or where many arrays are being copied.
Brett Spell
 
Comment and Contribute

 

 

 

 

 


(Maximum characters: 1200). You have 1200 characters left.

 

 

Sitemap
Thanks for your registration, follow us on our social networks to keep up-to-date