Skip to main content

Different ways to initialize ArrayList in Java

How to initialize ArrayList in Java

In this article, we are going to learn different ways to initialize ArrayList in Java. If you don't know about Arraylist, read this article to know All about the ArrayList in Java.

Content of the Article


How to initialize ArrayList in Java - using Default Constructor?

We can initialize ArrayList in Java using default constructor and then we can add elements into the ArrayList with the help of add() method. For Example
Syntax
ArrayList<T> arrayList = new ArrayList<>();

Java init ArrayList Example 1: Initialize ArrayList in Java - using Default Constructor

import java.util.ArrayList;

public class ArrayListExample {
        public static void main(String[] args) {
                ArrayList<String> languageList = new ArrayList<>();
                languageList.add("Java");
                languageList.add("C++");
                languageList.add("Python");
                languageList.add("NodeJS");
                languageList.add("JavaScript");
                System.out.println("Language ArrayList : " + languageList);
        }
}
Output
Language ArrayList : [Java, C++, Python, NodeJS, JavaScript]
This is a very simple method to initialize ArrayList in Java, but it is not a convenient way as it can be very hard to add hundreds or thousands of elements. We are going to learn different ways to initialize ArrayList in this topic that can help in these types of scenarios.

How to initialize ArrayList in Java - using Copy Constructor?

We can use copy constructor of ArrayList to copy elements from one ArrayList to another ArrayList.
Syntax
ArrayList<T> copyArrayList = new ArrayList<>(originalArrayList);

Java init ArrayList Example 2: Initialize ArrayList in Java - using Copy Constructor

import java.util.ArrayList;

public class ArrayListExample {
        public static void main(String[] args) {
                ArrayList<String> languageList = new ArrayList<>();
                languageList.add("Java");
                languageList.add("C++");
                languageList.add("Python");
                languageList.add("NodeJS");
                languageList.add("JavaScript");
                ArrayList<String> copyLanguageList = new ArrayList<>(languageList);
                System.out.println("Language ArrayList : " + copyLanguageList);
        }
}
Output
Language ArrayList : [Java, C++, Python, NodeJS, JavaScript]

How to initialize ArrayList in Java - using Arrays.asList() method?

In the java.util.Arrays class there is a static method asList() which can be used to initialize ArrayList in Java.
Syntax
List<T> list = Arrays.asList(element1, element2, ......., elementN);
ArrayList<T> arrayList = new ArrayList<>(list);
This method return reference of List interface and we can use Copy Constructor to initialize ArrayList in Java.

Java init ArrayList Example 3: Initialize ArrayList in Java - using Arrays.asList() method

import java.util.ArrayList;
import java.util.Arrays;

public class ArrayListExample {
        public static void main(String[] args) {
                ArrayList<String> languageList = new ArrayList<>(
                        Arrays.asList("Java", "C++", "Python", "NodeJS", "JavaScript"));
                System.out.println("Language ArrayList : " + languageList);
        }
}
Output
Language ArrayList : [Java, C++, Python, NodeJS, JavaScript]

How to initialize ArrayList in Java - using stream API?

With the help of stream API, introduced in Java 8, we can initialize ArrayList. We can start a stream using of() static method of java.util.stream.Stream class. And then, by using collect() method and java.util.stream.Collectors, we can collect the stream into the ArrayList.
Syntax
List<T> list = Stream.of(element1, element2, ......., elementN).collect(Collectors.toList());
ArrayList<T> arrayList = new ArrayList<>(list);

Java init ArrayList Example 4: Initialize ArrayList in Java - using stream API

import java.util.ArrayList;
import java.util.stream.Collectors;
import java.util.stream.Stream;

public class ArrayListExample {
        public static void main(String[] args) {
                ArrayList<String> languageList = new ArrayList<>(
                        Stream.of("Java", "C++", "Python", "NodeJS", "JavaScript")
                              .collect(Collectors.toList()));
                System.out.println("Language ArrayList : " + languageList);
        }
}
Output
Language ArrayList : [Java, C++, Python, NodeJS, JavaScript]

Related Posts:


Conslusion

In this article, we have learned different ways to initialize ArrayList in Java. We have learned how to initialize ArrayList using Arrays.asList() method, stream APIs, copy constructor etc.

Comments