public static void main(String[] args) throws Exception {
List<String> list = new ArrayList<>();
list.add("1");
list.add("2");
list.add("3");
list.add("4");
// below code does not work
list.stream().filter(new Predicate<String>() {
@Override
public boolean test(String s) {
System.out.println("1:test:" + s);
return true;
}
}).map(s -> {
System.out.println("1:map:" + s);
return s;
});
// below code works
list.stream().filter(new Predicate<String>() {
@Override
public boolean test(String s) {
System.out.println("2:test" + s);
return true;
}
}).map(s -> {
System.out.println("2:map" + s);
return s;
}).collect(Collectors.toList());
}
The output of the above code is:
2:test1
2:map1
2:test2
2:map2
2:test3
2:map3
2:test4
2:map4
I don't know why it didn't work the first time.