Conversion of Array To ArrayList in Java
Last Updated :
26 Oct, 2021
Following methods can be used for converting Array To ArrayList:
Method 1: Using Arrays.asList() method
Syntax: public static List asList(T... a)
// Returns a fixed-size List as of size of given array.
// Element Type of List is of same as type of array element type.
// It returns an List containing all of the elements in this
// array in the same order.
// T represents generics
Note that the there is an array parameter and List return value.
- Returns a fixed-size list backed by the specified array.
- The returned list is serializable and implements RandomAccess.
- Since returned List is fixed-size therefore we can't add more element in it, but we can replace existing element with new element using set(index, new Element) method defined in ArrayList class.
Java
// Java program to demonstrate conversion of
// Array to ArrayList of fixed-size.
import java.util.*;
class GFG
{
public static void main (String[] args)
{
String[] geeks = {"Rahul", "Utkarsh",
"Shubham", "Neelam"};
// Conversion of array to ArrayList
// using Arrays.asList
List al = Arrays.asList(geeks);
System.out.println(al);
}
}
Output:
[Rahul, Utkarsh, Shubham, Neelam]
What if we add more elements to the converted list?
Since returned List is fixed-size List, we can't add more element(s). An attempt of adding more elements would cause UnsupportedOperationException.
Consider the following example.
Java
// Java program to demonstrate error
// if we add more element(s) to
// a fixed-size List.
import java.util.*;
class GFG
{
public static void main (String[] args)
{
String[] geeks = {"Rahul", "Utkarsh",
"Shubham", "Neelam"};
// Conversion of array to ArrayList
// using Arrays.asList
List al = Arrays.asList(geeks);
System.out.println(al);
// Adding some more values to the List.
al.add("Shashank");
al.add("Nishant");
System.out.println(al);
}
}
Output:
[Rahul, Utkarsh, Shubham, Neelam]
Runtime error
Exception in thread "main" java.lang.UnsupportedOperationException
at java.util.AbstractList.add(AbstractList.java:148)
at java.util.AbstractList.add(AbstractList.java:108)
at GFG.main(File.java:16)
It is therefore recommended to create new ArrayList and pass Arrays.asList(array reference) as an argument to it (i.e. as an constructor argument of ArrayList).
Consider the following example:
Java
// Java program to demonstrate how to add
// one or more element(s) to returned
// resizable List.
import java.util.*;
class GFG
{
public static void main (String[] args)
{
String[] geeks = {"Rahul", "Utkarsh",
"Shubham", "Neelam"};
List<String> al =
new ArrayList<String>(Arrays.asList(geeks));
System.out.println(al);
// Adding some more values to the List.
al.add("Shashank");
al.add("Nishant");
System.out.println("\nArrayList After adding two" +
" more Geeks: ");
System.out.println(al);
}
}
[Rahul, Utkarsh, Shubham, Neelam]
ArrayList After adding two more Geeks:
[Rahul, Utkarsh, Shubham, Neelam, Nishant, Shashank]
&nbap;
Method 2: Using Collections.addAll() method
Syntax: public static boolean addAll(Collection c, T... a)
// Adds all of the specified elements to the specified collection.
// Elements to be added may be specified individually or as an array.
// T is generics
Note that there is a collection parameter c into which elements to be inserted and array parameter a contains the elements to insert into c.
Return type is boolean type. It returns true if the collection changed as a result of the call.
It throws UnsupportedOperationException if collection c does not support add method and throws IllegalArgumentException if some aspect of a value in elements(or elements of array) prevents it from being added to collection c.
Consider the following example:
Java
// Java program to demonstrate how to
// add all elements of array to arrayList.
import java.util.*;
class GFG
{
public static void main (String[] args)
{
String[] geeks = {"Rahul", "Utkarsh",
"Shubham", "Neelam"};
List<String> al = new ArrayList<String>();
// adding elements of array to arrayList.
Collections.addAll(al, geeks);
System.out.println(al);
}
}
Output :
[Rahul, Utkarsh, Shubham, Neelam]
Adding null to the list
Note : If the specified collection or specified array is null then it throw NullpointerException.
Java
// Adding null to a list
import java.util.*;
class GFG
{
public static void main (String[] args)
{
String[] geeks = {"Rahul", "Utkarsh",
"Shubham", "Neelam"};
List<String> al = new ArrayList<String>();
Collections.addAll(null, geeks);
System.out.println(al);
}
}
Adding null to the end of list
Java
import java.util.*;
class GFG
{
public static void main (String[] args)
{
String[] geeks = {"Rahul", "Utkarsh",
"Shubham", "Neelam"};
List<String> al = new ArrayList<String>();
Collections.addAll(al, null);
System.out.println(al);
}
}
RunTime Error
Exception in thread "main" java.lang.NullPointerException
at java.util.Collections.addAll(Collections.java:5401)
at GFG.main(File.java:11)
Method 3: Using Manual method to convert Array using add() method
We can use this method if we don’t want to use java in built method(s). This is a manual method of adding all array's elements to List.
Syntax: public boolean add(Object obj)
// Appends the specified element to the end of this list.
// Returns true.
Java
// Java program to convert a ArrayList to
// an array using add() in a loop.
import java.util.*;
class GFG
{
public static void main (String[] args)
{
String[] geeks = {"Rahul", "Utkarsh",
"Shubham", "Neelam"};
List<String> al = new ArrayList<String>();
// Array to ArrayList Conversion
for (String geek : geeks)
al.add(geek);
System.out.println(al);
}
}
Output:
[Rahul, Utkarsh, Shubham, Neelam]
Related Article: ArrayList to Array Conversion
Similar Reads
Array to ArrayList Conversion in Java
In Java, arrays are fixed-sized, whereas ArrayLists are part of the Java collection Framework and are dynamic in nature. Converting an array to an ArrayList is a very common task and there are several ways to achieve it.Methods to Convert Array to an ArrayList1. Using add() Method to Manually add th
3 min read
Array of ArrayList in Java
We often come across 2D arrays where most of the part in the array is empty. Since space is a huge problem, we try different things to reduce the space. One such solution is to use jagged array when we know the length of each row in the array, but the problem arises when we do not specifically know
2 min read
Convert Vector to ArrayList in Java
There are multiple ways to convert vector to ArrayList, using passing the Vector in ArrayList constructor and by using simple vector traversal and adding values to ArrayList. Approach 1: Create a Vector.Add some values in Vector.Create a new ArrayList.Traverse vector from the left side to the right
3 min read
How to Convert HashMap to ArrayList in Java?
In Java a HashMap is a collection that stores key-value pairs on the other hand, an ArrayList is a collection that stores dynamic arrays. There are some scenarios where we need to convert a HashMap into an ArrayList such as:Extracting only the keys or values in the list form.Converting key-value pai
2 min read
ArrayList of ArrayList in Java
We have discussed that an array of ArrayList is not possible without warning. A better idea is to use ArrayList of ArrayList. Java // Java code to demonstrate the concept of // array of ArrayList import java.util.*; public class Arraylist { public static void main(String[] args) { int n = 3; // Here
1 min read
Array vs ArrayList in Java
In Java, an Array is a fixed-sized, homogenous data structure that stores elements of the same type whereas, ArrayList is a dynamic-size, part of the Java Collections Framework and is used for storing objects with built-in methods for manipulation. The main difference between array and ArrayList is:
4 min read
Convert List to Array in Java
The List interface provides a way to store the ordered collection. It is a child interface of Collection. It is an ordered collection of objects where duplicate values can be stored. Since List preserves the insertion order, it allows positional access and insertion of elements. Now here we are give
5 min read
How to Convert Character Array to String in Java?
Strings are defined as an array of characters. The difference between a character array and a string is the string is terminated with a special character "\0". A character array can be converted to a string and vice versa. In this article, we will discuss how to convert a character array to a string
4 min read
Join two ArrayLists in Java
Given two ArrayLists in Java, the task is to join these ArrayLists. Examples:Input: ArrayList1: [Geeks, For, ForGeeks] , ArrayList2: [GeeksForGeeks, A computer portal] Output: [Geeks, For, ForGeeks, GeeksForGeeks, A computer portal] Input: ArrayList1: [G, e, e, k, s] , ArrayList2: [F, o, r, G, e, e,
1 min read
How to Convert Vector to Array in Java?
As we all know an array is a group of liked-typed variables that are referred to by a common name while on the other hand vectors basically fall in legacy classes but now it is fully compatible with collections. It is found in java.util package and implement the List interface which gives a superior
3 min read