What are the benefits of using streams and functional programming in Java?

Technical