optional class in java 8 vs null check