Files
openide/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/quickFix/stringConcatInLoop/afterConcatNullSafeComplex.java
Tagir Valeev 7e1064ea3c [java-intentions] More preview tests; minor fixes
GitOrigin-RevId: 22a46c15d8900d8a31514846755a013f6a67ad42
2022-07-29 17:55:13 +00:00

27 lines
826 B
Java

// "Convert variable 'res' from String to StringBuilder (null-safe)" "true-preview"
import java.util.Optional;
public class Main {
String test(String[] strings) {
StringBuilder res = null;
for (String s : strings) {
if(res == null) {
res = Optional.ofNullable(s.isEmpty() ? null : s).map(StringBuilder::new).orElse(null);
} else {
res.append(", ").append(s);
}
res = (res == null ? new StringBuilder("null") : res).append(", ");
res.append(s);
}
System.out.println(res);
consume(res.toString());
return res.toString(); // known to be not-null at this point
}
// NotNull parameter inferred
static void consume(String s) {
System.out.println(s.trim());
}
}