My shop is considering development paths and frameworks.
One Framework path I am evaluating is a homegrown library, small and specific in nature, built on top of Google Guava.
Here is a quick GitHub writeup explaining the issue around null, and how the Guava framework developers avoid it:
Reading my DZone blogs today the top article was this very topic, demonstrating the use (in code) of ‘Optional’, which has made it’s way into the Java 8 VM.
And beware of those NULLs!