How to convert LinkedList to Array in Java?
Last Updated :
28 Jun, 2022
Improve
Given a Linked List in Java, the task is to convert this LinkedList to Array. Examples:
Input: LinkedList: ['G', 'e', 'e', 'k', 's'] Output: Array: ['G', 'e', 'e', 'k', 's'] Input: LinkedList: [1, 2, 3, 4, 5] Output: Array: [1, 2, 3, 4, 5]
Approach:
- Get the LinkedList
- Convert the LinkedList to Object array using toArray() method.
- Convert the Object array to desired type array using Arrays.copyOf() method.
- Return the print the Array
Below is the implementation of the above approach:
// Java program to convert
// LinkedList to Array
import java.util.*;
public class GFG {
// Function to convert LinkedList to Array
public static <T> Object[] convertLinkedListToArray(LinkedList<T> linkedList)
{
// Converting LinkedList to Array
Object[] array = linkedList.toArray();
return array;
}
public static void main(String args[])
{
// Creating linked list
LinkedList<String>
linkedList = new LinkedList<String>();
// Adding elements to the linked list
linkedList.add("G");
linkedList.add("e");
linkedList.add("e");
linkedList.add("k");
linkedList.add("s");
// Print the LinkedList
System.out.println("Linked list: "
+ linkedList);
// Converting LinkedList to Object Array
Object[] objArray = convertLinkedListToArray(linkedList);
// Convert Object[] to String[]
String[] array = Arrays.copyOf(objArray,
objArray.length,
String[].class);
// Print the String Array
System.out.println("Array: "
+ Arrays.toString(array));
}
}
Output:
Linked list: [G, e, e, k, s] Array: [G, e, e, k, s]
Time complexity :
Converting an Linkedlist to an Array takes O(n) time. Every element must be copied. Inserting or removing an element takes O(m) amortized time, where m is the number of elements following the insertion/removal index.