Java Stream How to - Filter String list by starting value








Question

We would like to know how to filter String list by starting value.

Answer

import java.util.ArrayList;
import java.util.List;
/*from  w ww .  j  a  va  2  s .  com*/
public class Main {

  public static void main(final String[] args) {
    List<String> stringCollection = new ArrayList<>();
    stringCollection.add("ddd2");
    stringCollection.add("aaa2");
    stringCollection.add("bbb1");
    stringCollection.add("aaa1");
    stringCollection.add("bbb3");
    stringCollection.add("ccc");
    stringCollection.add("bbb2");
    stringCollection.add("ddd1");

    // filtering

    stringCollection.stream().filter((s) -> s.startsWith("a"))
        .forEach(System.out::println);
  }

}

The code above generates the following result.