Files
2017-01-27 17:41:53 +07:00

35 lines
1.4 KiB
Java

// "Fix all 'Stream API call chain can be replaced with loop' problems in file" "true"
import java.util.*;
public class Main {
private static String testOrElse(List<String> list) {
if (list == null) return null;
else return list.stream().filter(str -> str.contains("x")).fin<caret>dFirst().orElse(null);
}
private static String testOrElseGet(List<String> list) {
if (list == null) return null;
else return list.stream().filter(str -> str.contains("x")).findFirst().orElseGet(() -> null);
}
private static void testIfPresent(List<String> list) {
list.stream().filter(str -> str.contains("x")).findFirst().ifPresent(System.out::println);
}
public static boolean testIsPresent(List<List<String>> list) {
return list.stream().filter(Objects::nonNull).flatMap(List::stream).findAny().isPresent();
}
static String testIsPresentNotTernary(List<List<String>> strings) {
return !strings.stream().filter(Objects::nonNull).flatMap(List::stream).findFirst().isPresent() ? "xyz" : "abc";
}
public static void main(String[] args) {
System.out.println(testOrElse(Arrays.asList("a", "b", "syz")));
System.out.println(testOrElseGet(Arrays.asList("a", "b", "syz")));
testIfPresent(Arrays.asList("a", "b", "syz"));
System.out.println(testIsPresent(asList(asList(), asList("a"), asList("b", "c"))));
System.out.println(testIsPresentNotTernary(asList(asList(), asList("a"), asList("b", "c"))));
}
}