Merge 2 Arrays

How to Merge Two Arrays in Java

There are following ways to merge two arrays:

  • Java arraycopy() method
  • Without using arraycopy() method
  • Java Collections

Java arraycopy() method

  1. public static void arraycopy(Object source, int source_position,   
  2. Object destination, int destination_position, int length)  

Parameters

  • source: It is a source array.
  • source_position: Starting point in the source array.
  • destination: It is a destination array.
  • destination_position: Starting position in the destination array.
  • length: The number of array elements to be copied
  1. import java.util.Arrays;  
  2. public class MergeArrayExample1 {  
  3. public static void main(String[] args)  {  
  4. int[] firstArray = {23,45,12,78,4,90,1};        //source array  
  5. int[] secondArray = {77,11,45,88,32,56,3};  //destination array  
  6. int fal = firstArray.length;        //determines length of firstArray  
  7. int sal = secondArray.length;   //determines length of secondArray  
  8. int[] result = new int[fal+sal]; //resultant array of size first array and second array  
  9. System.arraycopy(firstArray, 0, result, 0, fal);  
  10. System.arraycopy(secondArray, 0, result, fal, sal);  
  11. System.out.println(Arrays.toString(result));    //prints the resultant array  
  12. }  
  13. }  

Without using arraycopy() method

  1. public class MergeArrayExample3  
  2. {  
  3. public static void main(String[] args)  
  4. {  
  5. int[] firstArray = {56,78,90,32,67,12}; //initialized array  
  6. int[] secondArray = {11,14,9,5,2,23,15};  
  7. int length = firstArray.length + secondArray.length; //add the length of firstArray into secondArray  
  8. int[] mergedArray = new int[length];    //resultant array  
  9. int pos = 0;  
  10. for (int element : firstArray) //copying elements of secondArray using for-each loop  
  11. {  
  12. mergedArray[pos] = element;  
  13. pos++;              //increases position by 1  
  14. }  
  15. for (int element : secondArray) //copying elements of firstArray using for-each loop  
  16. {  
  17. mergedArray[pos] = element;  
  18. pos++;  
  19. }  
  20. System.out.println(Arrays.toString(mergedArray));   //prints the resultant array  
  21. }  
  22. }  

Using Collections


  1. import java.util.*;  
  2. public class MergeArrayExample4  
  3. {  
  4. public static void main(String args[])   
  5. {  
  6. String str1[] = { "A""E""I" };          //source array  
  7. String str2[] = { "O""U" };               //destination array  
  8. List list = new ArrayList(Arrays.asList(str1)); //returns a list view of an array  
  9. //returns a list view of str2 and adds all elements of str2 into list  
  10. list.addAll(Arrays.asList(str2));     
  11. Object[] str3 = list.toArray();         //converting list to array  
  12. System.out.println(Arrays.toString(str3));  //prints the resultant array  
  13. }  
  14. }  


Comments

Popular posts from this blog

Android - Using KeyStore to encrypt and decrypt the data

Stack and Queue

Java Reflection API