// "Fix all 'Stream API call chain can be replaced with loop' problems in file" "true" import java.util.List; import java.util.Optional; import static java.util.Arrays.asList; public class Main { public static Optional<String> testSimple(List<String> list) { for (String s : list) { return Optional.of(s); } return Optional.empty(); } public void testAssign(List<String> list) { String res = ""; for (String s : list) { String trim = s.trim(); if (!trim.isEmpty()) { res = trim; break; } } System.out.println(res); } public void testAssignFinal(List<String> list) { String res = ""; for (String s : list) { String trim = s.trim(); if (!trim.isEmpty()) { res = trim; break; } } System.out.println(res); } public static Optional<String> testFlatMap(List<List<String>> list) { for (List<String> x : list) { if (x != null) { for (String s : x) { return Optional.of(s); } } } return Optional.empty(); } public static String testFlatMapLabelConflict(List<List<String>> list) { String res = null; OUTER: for(int i=0; i<10; i++) { String found = ""; OUTER1: for (List<String> x : list) { if (x != null) { for (String s : x) { found = s; break OUTER1; } } } res = found; } return res; } public static void main(String[] args) { System.out.println(testSimple(asList("a", "b", "c"))); System.out.println(testFlatMap(asList(asList(), asList("a"), asList("b", "c")))); System.out.println(testFlatMapLabelConflict(asList(asList(), asList("a"), asList("b", "c")))); } }