Initialize List of String in java

In this post, we will see how to initialize List of String in java.

Can you initialize List of String as below:

List list = new List();

You can't because List is an interface and it can not be instantiated with new List().

You need to instantiate it with the class that implements the List interface.

Here are the common java Collections classes which implement List interface.

// ArrayList
List list1 = new ArrayList();

// LinkedList
List list2 = new LinkedList();

// Vector
List list3 = new Vector();

// CopyOnWriteArrayList
List list4 = new CopyOnWriteArrayList();

In most of the cases, you will initialize List with ArrayList as below.

// ArrayList
List list1 = new ArrayList();

If you are using java 7 or greater than you can use diamond operator with generics.

// ArrayList
List list1 = new ArrayList<>();

Initialize List of Strings with values

There are many ways to initialize list of Strings with values.

Arrays’s asList

You can use Arrays’s asList method to initialize list with values.

List list1 = Arrays.asList("India","China","Bhutan");

Stream.of (Java 8)

You can use java 8‘s Stream to initialize list of String with values.

List list1 = Stream.of("India","China","Bhutan").collect(Collectors.toList());

List.of (Java 9)

Finally, java has introduced a of() method in List class to initialize list with values in java 9.

List list1 = List.of("India","China","Bhutan");

Using ArrayList’s add method

You can obviously initialize ArrayList with new operator and then use add method to add element to the list.

// ArrayList
List list1 = new ArrayList<>();
list1.add("India");
list1.add("China");
list1.add("Bhutan");

Using guava library

You can use guava library as well.

List list1 = Lists.newArrayList("India","China","Bhutan");

Here is the complete example.

package org.arpit.java2blog;

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

public class ListOfStringsMain {

    public static void main(String[] args) {

        List<String> list1 = new ArrayList<>();
        list1.add("India");
        list1.add("China");
        list1.add("Bhutan");
        System.out.println(list1);

        // Using Arrays.asList
        List<String> list2= Arrays.asList("India","China","Bhutan");
        System.out.println(list2);

        // Using Stream.of
        List<String> list3 = Stream.of("India","China","Bhutan").collect(Collectors.toList());
        System.out.println(list3);

        List<String> list4 = List.of("India","China","Bhutan");
        System.out.println(list4);
    }
}

Output:

[India, China, Bhutan]
[India, China, Bhutan]
[India, China, Bhutan]
[India, China, Bhutan]

That’s all about how to initialize List of String in java.

[social_share share_on="facebook,twitter,linkedin,whatsapp"][post_navigator in_same_term="true"]

Leave a Reply

Your email address will not be published. Required fields are marked *

Subscribe to our newletter

Get quality tutorials to your inbox. Subscribe now.