< prev index next >
src/java.base/share/classes/java/lang/String.java
Print this page
rev 51726 : 8203442: String::transform
Reviewed-by: smarks, rriggs, sherman
*** 35,44 ****
--- 35,45 ----
import java.util.Formatter;
import java.util.Locale;
import java.util.Objects;
import java.util.Spliterator;
import java.util.StringJoiner;
+ import java.util.function.Function;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
import java.util.regex.PatternSyntaxException;
import java.util.stream.Collectors;
import java.util.stream.IntStream;
*** 2970,2979 ****
--- 2971,2999 ----
.orElse(0);
return indent(n - outdent, true);
}
/**
+ * This method allows the application of a function to {@code this}
+ * string. The function should expect a single String argument
+ * and produce an {@code R} result.
+ *
+ * @param f functional interface to a apply
+ *
+ * @param <R> class of the result
+ *
+ * @return the result of applying the function to this string
+ *
+ * @see java.util.function.Function
+ *
+ * @since 12
+ */
+ public <R> R transform(Function<String, R> f) {
+ return f.apply(this);
+ }
+
+ /**
* This object (which is already a string!) is itself returned.
*
* @return the string itself.
*/
public String toString() {
< prev index next >