An array is a group of like-typed variables that are referred to by a common name. An array can contain primitives data types as well as objects of a class depending on the definition of the array. In case of primitives data types, the actual values are stored in contiguous memory locations. In case of objects of a class, the actual objects are stored in heap segment.
The Java.util.List is a child interface of Collection. It is an ordered collection of objects in which duplicate values can be stored. Since List preserves the insertion order, it allows positional access and insertion of elements. List Interface is implemented by ArrayList, LinkedList, Vector and Stack classes.
Examples:
Input: Array: [Geeks, forGeeks, A computer Portal]
Output: List: [Geeks, forGeeks, A computer Portal]Input: Array: [1, 2, 3, 4, 5]
Output: List: [1, 2, 3, 4, 5]
Below are methods to convert Array to List in Java:
- Brute Force or Naive Method: In this method, an empty List is created and all elements present of the Array are added to it one by one.
Algorithm:
- Get the Array to be converted.
- Create an empty List
- Iterate through the items in the Array.
- For each item, add it to the List
- Return the formed List
Program:
// Java Program to convert
// Array to List
import
java.util.*;
import
java.util.stream.*;
class
GFG {
// Generic function to convert an Array to List
public
static
<T> List<T> convertArrayToList(T array[])
{
// Create an empty List
List<T> list =
new
ArrayList<>();
// Iterate through the array
for
(T t : array) {
// Add each element into the list
list.add(t);
}
// Return the converted List
return
list;
}
public
static
void
main(String args[])
{
// Create an Array
String array[] = {
"Geeks"
,
"forGeeks"
,
"A Computer Portal"
};
// Print the Array
System.out.println(
"Array: "
+ Arrays.toString(array));
// convert the Array to List
List<String>
list = convertArrayToList(array);
// Print the List
System.out.println(
"List: "
+ list);
}
}
chevron_rightfilter_noneOutput:Array: [Geeks, forGeeks, A computer Portal] List: [Geeks, forGeeks, A computer Portal]
- Using Arrays.asList() method: In this method, the Array is passed as the parameter into the List constructor with the help of Arrays.asList() method.
Algorithm:
- Get the Array to be converted.
- Create the List by passing the Array as parameter in the constructor of the List with the help of Arrays.asList() method
- Return the formed List
Program:
// Java Program to convert
// Array to List
import
java.util.*;
import
java.util.stream.*;
class
GFG {
// Generic function to convert an Array to List
public
static
<T> List<T> convertArrayToList(T array[])
{
// Create the List by passing the Array
// as parameter in the constructor
List<T> list = Arrays.asList(array);
// Return the converted List
return
list;
}
public
static
void
main(String args[])
{
// Create an Array
String array[] = {
"Geeks"
,
"forGeeks"
,
"A computer Portal"
};
// Print the Array
System.out.println(
"Array: "
+ Arrays.toString(array));
// convert the Array to List
List<String>
list = convertArrayToList(array);
// Print the List
System.out.println(
"List: "
+ list);
}
}
chevron_rightfilter_noneOutput:Array: [Geeks, forGeeks, A computer Portal] List: [Geeks, forGeeks, A computer Portal]
- Using Collections.addAll(): Since List is a part of the Collection package in Java. Therefore the Array can be converted into the List with the help of Collections.addAll() method.
Algorithm:
- Get the Array to be converted.
- Create an empty List.
- Add the array into the List by passing it as the parameter to the Collections.addAll() method.
- Return the formed List
Program:
// Java Program to convert
// Array to List
import
java.util.*;
import
java.util.stream.*;
class
GFG {
// Generic function to convert an Array to List
public
static
<T> List<T> convertArrayToList(T array[])
{
// Create the List by passing the Array
// as parameter in the constructor
List<T> list =
new
ArrayList<>();
// Add the array to list
Collections.addAll(list, array);
// Return the converted List
return
list;
}
public
static
void
main(String args[])
{
// Create an Array
String array[] = {
"Geeks"
,
"forGeeks"
,
"A computer Portal"
};
// Print the Array
System.out.println(
"Array: "
+ Arrays.toString(array));
// convert the Array to List
List<String>
list = convertArrayToList(array);
// Print the List
System.out.println(
"List: "
+ list);
}
}
chevron_rightfilter_noneOutput:Array: [Geeks, forGeeks, A computer Portal] List: [Geeks, forGeeks, A computer Portal]
- Using Java 8 Stream API: ArrayList constructor can take another collection object to construct a new list containing the elements of the specied array.
Algorithm:
- Get the Array to be converted.
- Convert the array to Stream
- Convert the Stream to List using Collectors.toList()
- Collect the formed list using collect() method
- Return the formed List
Program:
// Java Program to convert
// Array to List in Java 8
import
java.util.*;
import
java.util.stream.*;
class
GFG {
// Generic function to convert array to list
public
static
<T> List<T> convertArrayToList(T array[])
{
// create a list from the Array
return
Arrays
.stream(array)
.collect(Collectors.toList());
}
public
static
void
main(String args[])
{
// Create an Array
String array[] = {
"Geeks"
,
"forGeeks"
,
"A computer Portal"
};
// Print the Array
System.out.println(
"Array: "
+ Arrays.toString(array));
// convert the Array to List
List<String>
list = convertArrayToList(array);
// Print the List
System.out.println(
"List: "
+ list);
}
}
chevron_rightfilter_noneOutput:
Array: [Geeks, forGeeks, A computer Portal] List: [Geeks, forGeeks, A computer Portal]
- Using Guava Lists.newArrayList(): Lists.newArrayList() creates a mutable ArrayList instance containing the elements of the specified array.
Algorithm:
- Get the Array to be converted.
- Create an empty List.
- Add the array into the List by passing it as the parameter to the Lists.newArrayList() method.
- Return the formed List
// Java Program to convert
// Array to List in Java 8
import
static
com.google.common.collect.Lists.*;
import
java.util.*;
import
java.util.stream.*;
class
GFG {
// Generic function to convert array to list
public
static
<T> List<T> convertArrayToList(T array[])
{
// create a list from the Array
return
Lists.newArrayList(array);
}
public
static
void
main(String args[])
{
// Create an Array
String array[] = {
"Geeks"
,
"forGeeks"
,
"A computer Portal"
};
// Print the Array
System.out.println(
"Array: "
+ Arrays.toString(array));
// convert the Array to List
List<String>
list = convertArrayToList(array);
// Print the List
System.out.println(
"List: "
+ list);
}
}
chevron_rightfilter_noneOutput:
Array: [Geeks, forGeeks, A computer Portal] List: [Geeks, forGeeks, A computer Portal]
Attention reader! Don’t stop learning now. Get hold of all the important Java Foundation and Collections concepts with the Fundamentals of Java and Java Collections Course at a student-friendly price and become industry ready.