Files
openide/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/quickFix/streamApiMigration/java10/afterUnmodifiableJava10.java

43 lines
1.7 KiB
Java

// "Fix all 'Loop can be collapsed with Stream API' problems in file" "true"
import java.util.*;
import java.util.stream.Collectors;
class Test {
List<String> testNullable(List<Integer> input) {
// suppress for nullable
List<String> list = input.stream().map(integer -> integer == null ? null : integer.toString()).collect(Collectors.toList());
return Collections.unmodifiableList(list);
}
List<String> test(String[] list) {
return Arrays.stream(list).filter(s -> !s.isEmpty()).collect(Collectors.toUnmodifiableList());
}
Collection<String> test2(String[] list) {
return Arrays.stream(list).filter(s -> !s.isEmpty()).collect(Collectors.toUnmodifiableSet());
}
List<String> test3(String[] array) {
return Arrays.stream(array).filter(s -> !s.isEmpty()).distinct().collect(Collectors.toUnmodifiableList());
}
Set<String> test4(String[] array) {
Set<String> result = Arrays.stream(array).filter(s -> !s.isEmpty()).collect(Collectors.toCollection(TreeSet::new));
// toUnmodifiableSet will not preserve order; not suggested here
return Collections.unmodifiableSet(result);
}
Map<String, Integer> map(List<String> input) {
return input.stream().filter(s -> !s.isEmpty()).collect(Collectors.toUnmodifiableMap(s -> s, s -> s.length(), (a, b) -> b));
}
Map<String, Integer> map1(List<String> input) {
Map<String, Integer> result = input.stream().filter(s -> !s.isEmpty()).collect(Collectors.toMap(s -> s, String::length, (a, b) -> b, TreeMap::new));
return Collections.unmodifiableMap(result);
}
Map<String, Integer> map2(int[] input) {
return Arrays.stream(input).filter(s -> s > 0).boxed().collect(Collectors.toUnmodifiableMap(s -> String.valueOf(s), s -> s, (a, b) -> b));
}
}