The reason why Optionals are so useful is because with Optionals it forces you to represent your data in such a way that you can’t invoke a method from null . Without Optionals it’s not only possible, it’s extremely easy to. In other words, you avoid sloppy logic and stupid errors.