diff options
Diffstat (limited to 'website2/usageExamples/experimental/ExtensionMethodExample_pre.jpage')
-rw-r--r-- | website2/usageExamples/experimental/ExtensionMethodExample_pre.jpage | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/website2/usageExamples/experimental/ExtensionMethodExample_pre.jpage b/website2/usageExamples/experimental/ExtensionMethodExample_pre.jpage new file mode 100644 index 00000000..b3b9f1fa --- /dev/null +++ b/website2/usageExamples/experimental/ExtensionMethodExample_pre.jpage @@ -0,0 +1,24 @@ +import lombok.experimental.ExtensionMethod; + +@ExtensionMethod({java.util.Arrays.class, Extensions.class}) +public class ExtensionMethodExample { + public String test() { + int[] intArray = {5, 3, 8, 2}; + intArray.sort(); + + String iAmNull = null; + return iAmNull.or("hELlO, WORlD!".toTitleCase()); + } +} + +class Extensions { + public static <T> T or(T obj, T ifNull) { + return obj != null ? obj : ifNull; + } + + public static String toTitleCase(String in) { + if (in.isEmpty()) return in; + return "" + Character.toTitleCase(in.charAt(0)) + + in.substring(1).toLowerCase(); + } +} |