summaryrefslogtreecommitdiff
path: root/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/lambda/newMethodRef/IDEA123366comment.java
blob: f360a9cf8f4448ae00e8cf7683ecaf18e94dbe03 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49

import java.util.Arrays;
import java.util.List;
import java.util.function.Function;
import java.util.stream.Collectors;
import java.util.stream.Stream;

class MethodReferenceTest {

  private final List<String> strings = Arrays.asList("One,Two", "Three,Four,Five");

  public static Stream<String> split(String csv) {
    return Arrays.asList(csv.split(",")).stream();
  }

  public void testMethodReference() {
    List<String> list = strings.stream()
      .flatMap(MethodReferenceTest::split)
      .collect(Collectors.toList());

  }

  public void testLambda() {
    List<String> list = strings.stream()
      .flatMap((t) -> MethodReferenceTest.split(t))
      .collect(Collectors.toList());
  }

  public void testMethodReferenceWithCast() {
    List<String> list = strings.stream()
      .flatMap((Function<String,Stream<String>>)MethodReferenceTest::split)
      .collect(Collectors.toList());

  }

  public void testAnonymousInnerClass() {
    List<String> strings = Arrays.asList("One,Two", "Three,Four,Five");

    List<String> list = strings.stream()
      .flatMap(new Function<String, Stream<String>>() {
        @Override
        public Stream<String> apply(String s) {
          return Arrays.asList(s.split(",")).stream();
        }
      })
      .collect(Collectors.toList());

  }
}