Home >Java >javaTutorial >How to Efficiently Convert a Java List to an Array?
Converting List to Array in Java
Converting a List to an array in Java is a common operation, and there are a few ways to achieve it. This question explores two prevalent methods.
To begin with, let's delve into the problem:
Problem:
One needs to populate an array tiendas with the values from the tiendasList.
Solution 1:
Utilizing the toArray method with an empty array as a parameter:
Foo[] array = list.toArray(new Foo[0]);
In this approach, the array is automatically sized to accommodate the number of elements in the list.
Solution 2:
Employing the toArray method with a pre-defined array:
Foo[] array = new Foo[list.size()]; list.toArray(array); // fill the array
Here, the array's size is explicitly specified before filling it with the list's values.
Important Note:
For reference types (non-primitives), both methods yield the desired result. However, for primitive types (e.g., int, long), the second method is required due to type erasure.
Update:
Modern Java best practices recommend using list.toArray(new Foo[0]) instead of list.toArray(new Foo[list.size()]). This recommendation is attributed to performance optimization introduced in recent Java versions.
The above is the detailed content of How to Efficiently Convert a Java List to an Array?. For more information, please follow other related articles on the PHP Chinese website!