mirror of
https://gitflic.ru/project/openide/openide.git
synced 2025-12-24 17:51:09 +07:00
Partially improves inference in incomplete mode GitOrigin-RevId: 1d9c7c75afd524ea02980be8f96c19fba1eaaf54
142 lines
4.1 KiB
Java
142 lines
4.1 KiB
Java
// "Fix all 'Stream API call chain can be replaced with loop' problems in file" "true"
|
|
|
|
import static java.util.Arrays.asList;
|
|
import java.util.*;
|
|
import java.util.stream.*;
|
|
|
|
public class Main {
|
|
public void testAveragingDouble(String... list) {
|
|
double sum = 0;
|
|
long count = 0;
|
|
for (String s : list) {
|
|
if (s != null) {
|
|
sum += 1.0 / s.length();
|
|
count++;
|
|
}
|
|
}
|
|
System.out.println(count > 0 ? sum / count : 0.0);
|
|
}
|
|
|
|
public void testAveragingInt(String... list) {
|
|
long sum = 0;
|
|
long count = 0;
|
|
for (String s : list) {
|
|
if (s != null) {
|
|
sum += s.length();
|
|
count++;
|
|
}
|
|
}
|
|
System.out.println(count > 0 ? (double) sum / count : 0.0);
|
|
}
|
|
|
|
public static long testCounting(List<String> strings) {
|
|
long count = 0L;
|
|
for (String s : strings) {
|
|
if (!s.isEmpty()) {
|
|
count++;
|
|
}
|
|
}
|
|
return count;
|
|
}
|
|
|
|
public static Optional<String> testMaxBy(List<String> strings) {
|
|
boolean seen = false;
|
|
String best = null;
|
|
for (String s : strings) {
|
|
if (!s.isEmpty()) {
|
|
if (!seen || s.compareTo(best) > 0) {
|
|
seen = true;
|
|
best = s;
|
|
}
|
|
}
|
|
}
|
|
return seen ? Optional.of(best) : Optional.empty();
|
|
}
|
|
|
|
public static Optional<String> testReducing1(List<String> list) {
|
|
boolean seen = false;
|
|
String acc = null;
|
|
for (String s : list) {
|
|
if (!seen) {
|
|
seen = true;
|
|
acc = s;
|
|
} else {
|
|
acc = acc + s;
|
|
}
|
|
}
|
|
return seen ? Optional.of(acc) : Optional.empty();
|
|
}
|
|
|
|
public static String testReducing2(List<String> list) {
|
|
String acc = "";
|
|
for (String s : list) {
|
|
acc = acc + s;
|
|
}
|
|
return acc;
|
|
}
|
|
|
|
static Integer testReducing3() {
|
|
Integer totalLength = 0;
|
|
for (String s : asList("a", "bb", "ccc")) {
|
|
Integer length = s.length();
|
|
totalLength = totalLength + length;
|
|
}
|
|
return totalLength;
|
|
}
|
|
|
|
public static DoubleSummaryStatistics testSummarizingDouble(List<String> strings) {
|
|
DoubleSummaryStatistics stat = new DoubleSummaryStatistics();
|
|
for (String str : strings) {
|
|
if (str != null) {
|
|
stat.accept(str.length() / 2.0);
|
|
}
|
|
}
|
|
return stat;
|
|
}
|
|
|
|
public static Double testSummingDouble(List<String> strings) {
|
|
double sum = 0.0;
|
|
for (String string : strings) {
|
|
if (string != null) {
|
|
sum += string.length();
|
|
}
|
|
}
|
|
return sum;
|
|
}
|
|
|
|
private static TreeSet<Integer> testToCollection() {
|
|
TreeSet<Integer> integers = new TreeSet<>();
|
|
for (int i : new int[]{4, 2, 1}) {
|
|
Integer integer = i;
|
|
integers.add(integer);
|
|
}
|
|
return integers;
|
|
}
|
|
|
|
// Unresolved reference
|
|
void f(Collection<? extends Foo> c) {
|
|
TreeSet treeSet = new TreeSet();
|
|
for (Foo foo : c) {
|
|
treeSet.add(foo);
|
|
}
|
|
Set<Foo> uniqueDescriptors = treeSet;
|
|
}
|
|
|
|
public static void main(String[] args) {
|
|
new Main().testAveragingDouble("a", "bbb", null, "cc", "dd", "eedasfasdfs");
|
|
new Main().testAveragingInt("a", "bbb", null, "cc", "dd", "eedasfasdfs");
|
|
System.out.println(testCounting(Arrays.asList()));
|
|
System.out.println(testCounting(Arrays.asList("a", "bbb", "cc", "d", "eee", "")));
|
|
System.out.println(testMaxBy(Arrays.asList()));
|
|
System.out.println(testMaxBy(Arrays.asList("a", "bbb", "cc", "d", "eee", "")));
|
|
System.out.println(testReducing1(asList("a", "b", "c")));
|
|
System.out.println(testReducing2(asList("a", "b", "c")));
|
|
System.out.println(testReducing3());
|
|
System.out.println(testSummarizingDouble(Arrays.asList(null, null)));
|
|
System.out.println(testSummarizingDouble(Arrays.asList("a", "bbb", "cc", "d", "eee", "")));
|
|
System.out.println(testSummingDouble(Arrays.asList(null, null)));
|
|
System.out.println(testSummingDouble(Arrays.asList("a", "bbb", "cc", "d", "eee", "")));
|
|
System.out.println(testToCollection());
|
|
}
|
|
}
|