Qual é o objetivo da classe Opcional do Guava

Li recentemente sobre isso e vi pessoas usando essa classe, mas em praticamente todos os casos, usandonull também teria funcionado - se não de maneira mais intuitiva. Alguém pode fornecer um exemplo concreto em queOptional conseguiria algo quenull não poderia ou de uma maneira muito mais limpa? A única coisa em que consigo pensar é usá-lo comMaps que não aceitamnull keys, mas mesmo isso poderia ser feito com um "mapeamento" lateral do valor de null. Alguém pode me fornecer um argumento mais convincente? Obrigado

questionAnswers(8)

yourAnswerToTheQuestion