Question
Which practice avoids a common mistake with map, flatMap, and reduce?
- Do not introduce hidden side effects inside stream transformations just because the syntax is compact.
- Ignore the map, flatMap, and reduce issue and rely on team discipline instead of APIs or contracts.
- Silence the map, flatMap, and reduce problem by using raw types, broad catches, or shared mutable state.
- Prefer the version of map, flatMap, and reduce that makes behavior less predictable as long as the code compiles.
Hint
Look for the option that protects correctness instead of hiding the problem.
Answer and rationale
Correct answer: A. Do not introduce hidden side effects inside stream transformations just because the syntax is compact.
Do not introduce hidden side effects inside stream transformations just because the syntax is compact. This is a common failure mode in real Java code and a frequent interview follow-up.
Track: Java