Thursday, July 4, 2024
HomeLanguagesJavaProgram to convert List of Integer to List of String in Java

Program to convert List of Integer to List of String in Java

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.

  1. Using Java 8 Stream API: A Stream is a sequence of objects that supports various methods which can be pipelined to produce the desired result.

    Java 8 Stream API can be used to convert List to List.

    Algorithm:

    1. Get the List of Integer.
    2. Convert List of Integer to Stream of Integer. This is done using List.stream().
    3. Convert Stream of Integer to Stream of String. This is done using Stream.map() and passing s -> String.valueOf(s) method as lambda expression.
    4. Collect Stream of String into List of String. This is done using Collectors.toList().
    5. Return/Print the List of String.

    Program:




    // Java Program to convert
    // List<Integer> to List<String> in Java 8
      
    import java.util.*;
    import java.util.stream.*;
    import java.util.function.*;
      
    class GFG {
      
        // Generic function to convert List of
        // String to List of String
        public static <T, U> List<U>
        convertIntListToStringList(List<T> listOfInteger,
                                   Function<T, U> function)
        {
            return listOfInteger.stream()
                .map(function)
                .collect(Collectors.toList());
        }
      
        public static void main(String args[])
        {
      
            // Create a List of Integer
            List<Integer> listOfInteger = Arrays.asList(1, 2, 3, 4, 5);
      
            // Print the List of Integer
            System.out.println("List of Integer: " + listOfInteger);
      
            // Convert List of Integer to List of String
            List<String> listOfString = convertIntListToStringList(
                listOfInteger,
                s -> String.valueOf(s));
      
            // Print the List of String
            System.out.println("List of String: " + listOfString);
        }
    }

    
    
    Output:

    List of String: [1, 2, 3, 4, 5]
    List of Integer: [1, 2, 3, 4, 5]
    
  2. Using Guava’s List.transform():

    Algorithm:

    1. Get the List of Integer.
    2. Convert List of Integer to List of String using Lists.transform(). This is done using passing s -> String.valueOf(s) method as lambda expression for transformation.
    3. Return/Print the List of String.

    Program:




    // Java Program to convert
    // List<Integer> to List<String> in Java 8
      
    import com.google.common.base.Function;
    import com.google.common.collect.Lists;
    import java.util.*;
    import java.util.stream.*;
      
    class GFG {
      
        // Generic function to convert List of
        // String to List of String
        public static <T, U> List<U>
        convertIntListToStringList(List<T> listOfInteger,
                                   Function<T, U> function)
        {
            return Lists.transform(listOfInteger, function);
        }
      
        public static void main(String args[])
        {
      
            // Create a List of Integer
            List<Integer> listOfInteger = Arrays.asList(1, 2, 3, 4, 5);
      
            // Print the List of Integer
            System.out.println("List of Integer: " + listOfInteger);
      
            // Convert List of Integer to List of String
            List<String> listOfString = convertIntListToStringList(
                listOfInteger,
                s -> String.valueOf(s));
      
            // Print the List of String
            System.out.println("List of String: " + listOfString);
        }
    }

    
    
    Output:

    List of String: [1, 2, 3, 4, 5]
    List of Integer: [1, 2, 3, 4, 5]
    
Nokonwaba Nkukhwana
Experience as a skilled Java developer and proven expertise in using tools and technical developments to drive improvements throughout a entire software development life cycle. I have extensive industry and full life cycle experience in a java based environment, along with exceptional analytical, design and problem solving capabilities combined with excellent communication skills and ability to work alongside teams to define and refine new functionality. Currently working in springboot projects(microservices). Considering the fact that change is good, I am always keen to new challenges and growth to sharpen my skills.
RELATED ARTICLES

LEAVE A REPLY

Please enter your comment!
Please enter your name here

Most Popular

Recent Comments