aboutsummaryrefslogtreecommitdiff
path: root/usage_examples/experimental/ExtensionMethodExample_post.jpage
blob: de46d776b7e41b69afa8d0fb5aec2e657e472021 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
public class ExtensionMethodExample {
	public String test() {
		int[] intArray = {5, 3, 8, 2};
		java.util.Arrays.sort(intArray);
		
		String iAmNull = null;
		return Extensions.or(iAmNull, Extensions.toTitleCase("hELlO, WORlD!"));
	}
}

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();
	}
}