Thursday, January 29, 2026
HomeLanguagesJavaJava Program to Concatenate Two List

Java Program to Concatenate Two List

Concatenating two lists means merging two lists into a single list.

Consider the given lists:

LIST 1

LIST 2

LIST AFTER CONCATENATION

There are several methods to perform concatenation operation:

  1. Using addAll() method
  2. Using stream
  3. Using union()

Method 1: Using addAll() method

Syntax:

addAll ( list name ) 

This method takes name of list as argument and add all the elements of the specified list in the same order as the original list. 

  • Create a new empty list ( concatenated_list)
  • Use addAll () method to concatenate the given list1 and list2 into the newly created list.

concatenated_list.addAll (list1) // concatenates first list 

concatenated_list.addAll (list2) // concatenates second list 

After performing the above steps our empty list now contains both the list.

Java




// Java Program to Concatenate Two List
// using addAll() method
  
import java.io.*;
import java.util.ArrayList;
import java.util.List;
  
public class GFG {
  
    public static void main(String[] args)
    {
        // given list 1
        List<Integer> list1 = new ArrayList<Integer>();
        list1.add(1);
        list1.add(2);
        list1.add(3);
        list1.add(4);
        
        // given list 2
        List<Integer> list2 = new ArrayList<Integer>();
        list2.add(5);
        list2.add(6);
        list2.add(7);
        list2.add(8);
  
        // creating new empty list
        List<Integer> concatenated_list
            = new ArrayList<Integer>();
  
        // using addAll( ) method to concatenate the lists
        concatenated_list.addAll(list1);
        concatenated_list.addAll(list2);
  
        System.out.println("list1: " + list1);
        System.out.println("list2: " + list2);
        System.out.println("Concatenated list: "
                           + concatenated_list);
    }
}


Output

list1: [1, 2, 3, 4]
list2: [5, 6, 7, 8]
Concatenated list: [1, 2, 3, 4, 5, 6, 7, 8]

Method 2: Using streams

Stream.concat(list1.stream(),list2.stream()).collect(Collectors.toList())

It takes two streams as argument and creates a concatenated stream out of them.Second list is appended to the first list. 

Java




// Java Program to Concatenate Two List 
// using streams
  
import java.io.*;
import java.util.ArrayList;
import java.util.List;
import java.util.stream.Collectors;
import java.util.stream.Stream;
  
public class GFG {
  
    public static void main(String[] args)
    {
        // given list 1
        List<Integer> list1 = new ArrayList<Integer>();
        list1.add(1);
        list1.add(2);
        list1.add(3);
        list1.add(4);
        
        // given list 2
        List<Integer> list2 = new ArrayList<Integer>();
        list2.add(5);
        list2.add(6);
        list2.add(7);
        list2.add(8);
  
        // creating new empty list
        List<Integer> concatenated_list = new ArrayList<Integer>();
  
        // using Stream.concat() method to concatenate the lists
        concatenated_list = Stream.concat(list1.stream(), list2.stream())
                  .collect(Collectors.toList());
  
        System.out.println("list1: " + list1);
        System.out.println("list2: " + list2);
        System.out.println("Concatenated list: "+ concatenated_list);
        
    }
}


Output

list1: [1, 2, 3, 4]
list2: [5, 6, 7, 8]
Concatenated list: [1, 2, 3, 4, 5, 6, 7, 8]

Method 3: Using union() 

ListUtils.union( list1, list2) 

 It takes two list as argument and return new concatenated list. Second list is appended to the first list. 

Java




// Java program to concatenate two lists
// using union()
  
import java.io.*;
import java.util.*;
import java.lang.*;
import org.apache.commons.collections.ListUtils;
  
public class GFG {
  
    public static void main(String[] args)
    {
        // given list 1
        List<Integer> list1 = new ArrayList<Integer>();
        list1.add(1);
        list1.add(2);
        list1.add(3);
        list1.add(4);
  
        // given list 2
        List<Integer> list2 = new ArrayList<Integer>();
        list2.add(5);
        list2.add(6);
        list2.add(7);
        list2.add(8);
  
        // creating new empty list
        List<Integer> concatenated_list = new ArrayList<Integer>();
  
        // using ListUtils.union() method to concatenate
        // the lists
        concatenated_list = ListUtils.union(list1, list2);
  
        System.out.println("list1: " + list1);
        System.out.println("list2: " + list2);
        System.out.println("Concatenated list: "
                           + concatenated_list);
    }
}


Output:

Prerequisites for running the above code:

RELATED ARTICLES

Most Popular

Dominic
32477 POSTS0 COMMENTS
Milvus
122 POSTS0 COMMENTS
Nango Kala
6849 POSTS0 COMMENTS
Nicole Veronica
11978 POSTS0 COMMENTS
Nokonwaba Nkukhwana
12065 POSTS0 COMMENTS
Shaida Kate Naidoo
6986 POSTS0 COMMENTS
Ted Musemwa
7221 POSTS0 COMMENTS
Thapelo Manthata
6934 POSTS0 COMMENTS
Umr Jansen
6916 POSTS0 COMMENTS