How to Map Elements Using the Map Method in Java 8
See Java: Tips and Tricks for similar articles.
Imagine you have a collection of temperature readings in Celsius that you need to convert to Fahrenheit. Prior to Java 8 you would be required to iterate through the collection and convert each temperature reading individually. In Java 8, the conversion of each temperature can be done in just one line of code. The key to achieving this goal is to use the map method of the Stream class. This method maps (i.e., translates) each element of a collection based on a given lambda or method reference. To learn how to map elements using the map method, follow these four steps.
- Open your text editor and create the Java program that will demonstrate the use of the
mapmethod. Type in the following Java statements:The stream will be created from the ArrayList that is defined on line 4. Note theimport java.util.stream.*; import java.util.*; public class MapElementsWithmapMethod { private static ListtemperaturesInCelsius=Arrays.asList(-5, 0, 17, 25, 38, 100); public static void main (String args[]) { System.out.println("Current temperature values in Celsius:"); temperaturesInCelsius.stream().forEach(System.out::println); System.out.println("Converted temperature values in Fahrenheit:"); temperaturesInCelsius.stream().map(temp -> (9 * temp) / 5 + 32).collect(Collectors.toList()).forEach(System.out::println); } } Arrays.asListmethod is used to convert the array of integers to an ArrayList. Themapmethod is passed to a lambda expression that converts the temperature from Celsius to Fahrenheit. Thecollectmethod collects the converted elements and applies theCollectors.toListto the elements, producing a new stream. The stream will be printed using theforEachmethod. I have highlighted the method chain containing themapmethod below:
- Save your file as
MapElementsWithmapMethod.java. - Open a command prompt and navigate to the directory containing your new Java program. Then type in the command to compile the source and hit Enter.

- You are ready to test your Java program. Type in the command to run the Java runtime launcher and hit Enter. The output displays the original list of temperatures stored in Celsius followed by the list of temperatures as converted into Fahrenheit by the
mapmethod.
