How to convert List of Integer to List of String in Java?

Java.util.List is a sub-interface of Collection. It is an ordered collection of objects in which repeated values ??can be stored. Since List retains the insertion order, it allows positional access and insertion of items. The List interface is implemented by the ArrayList, LinkedList, Vector, and Stack classes.

1.Using Java 8 Stream API:  A sequence is a sequence of objects that supports multiple methods that can be piped to produce the desired result. The Java 8 Sequence API can be used to convert lists to lists.

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 to List 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
	convertIntListToStringList(List 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 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 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 to List 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
	convertIntListToStringList(List listOfInteger,
							Function<T, U> function)
	{
		return Lists.transform(listOfInteger, function);
	}

	public static void main(String args[])
	{

		// Create a List of Integer
		List 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 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]

 

Submit Your Programming Assignment Details