Class Optional<T>


  • public class Optional<T>
    extends java.lang.Object
    We cannot go away from this Optional to java 8 Optional because, this Optional gives as three states! Where a value can an Object, a null (which is a valid json value) and absent, which is not possible with Java 8 Optional.
    • Field Detail

      • obj

        private final T obj
      • abs

        private final boolean abs
      • EMPTY

        private static final Optional<?> EMPTY
    • Constructor Detail

      • Optional

        private Optional()
      • Optional

        private Optional​(T obj)
    • Method Detail

      • empty

        public static <T> Optional<T> empty()
      • of

        public static <T> Optional<T> of​(T value)
      • get

        public T get()
      • isPresent

        public boolean isPresent()
      • equals

        public boolean equals​(java.lang.Object obj)
        Overrides:
        equals in class java.lang.Object
      • toString

        public java.lang.String toString()
        Overrides:
        toString in class java.lang.Object