Finding the longest string in an array of Strings in java

There are following way to find the longest string in an array of Strings in java.

  • First convert Arrays to list using Arrays.asList() method.
  • Now get the Stream data from List using arrayList.stream() method.
  • Now use the Stream.max() method  to compare first string length to second string length from (s1, s2) -> s1.length() – s2.length() and return Optional<T> of get() method to find the longest String from the List.
  • Finally, printing longest String on the console.
import java.util.Arrays;
import java.util.List;

public class LongestString {
	public static void main(String[] args) {
		List<String> list = Arrays.asList("java", "hibernate", "spring", "servlet");
		String longest = list.stream().max((s1, s2) -> s1.length() - s2.length()).get();
		System.out.println("longest string are :- " + longest);
	}
}

Output :- longest string are :- hibernate