Java Streams
Java streams have been around since Java 81. Java streams have been extensively covered by tutorials, and documentations 234 and are heavily used in the wild5. This blog post exposes why java streams are so important for the java ecosystem.
The main point developed is that, compared to imperative for and if,
Java streams produce “better” code at very little cost.
Streams Complexity
Before entering into the main argument, it is important to note that Java streams complexify Java. It complexifies the code in the sense that it adds a DSL language on top of existing Java. To new programmers, it makes Java harder; it adds something new to learn before being comfortable in the ecosystem. As demonstrated by the ubiquity of Java stream use in popular java projects5, this complexity is there to stay. It needs to be embraced as a major part of the Java programming language. In 2024, each Java programmer must be very comfortable with the streaming API.