• google plus

How to Map Elements Using the Map Method in Java 8

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.

  1. Open your text editor and create the Java program that will demonstrate the use of the map method. Type in the following Java statements:
    import java.util.stream.*;
    import java.util.*;
    public class MapElementsWithmapMethod {
    	private static List temperaturesInCelsius=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);
    	}
    }
    The stream will be created from the ArrayList that is defined on line 4. Note the Arrays.asList method is used to convert the array of integers to an ArrayList. The map method is passed to a lambda expression that converts the temperature from Celsius to Fahrenheit. The collect method collects the converted elements and applies the Collectors.toList to the elements, producing a new stream. The stream will be printed using the forEach method. I have highlighted the method chain containing the map method below:
    Java Source for Map Method
  2. Save your file as MapElementsWithmapMethod.java.
  3. 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.
    Compile Program with Map Method
  4. 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 map method.
    Run Program with Map Method
Author: Stephen Withrow

Stephen has over 30 years' experience in training, development, and consulting in a variety of technology areas including Java, C, C++, XML, JavaScript, AJAX, Tomcat, JBoss, Oracle, and DB2. His background includes design and implementation of business solutions on client/server, Web, and enterprise platforms. Stephen is a published writer in both technical and non-technical endeavors. Stephen received an undergraduate degree in Computer Science and Physics from Florida State University.

About Webucator

Webucator provides instructor-led training to students throughout the US and Canada. We have trained over 90,000 students from over 16,000 organizations on technologies such as Microsoft ASP.NET, Microsoft Office, XML, Windows, Java, Adobe, HTML5, JavaScript, Angular, and much more. Check out our complete course catalog.