Blog

Your dream job? Lets Git IT.
Interactive technical interview preparation platform designed for modern developers.

XGitHub

Platform

  • Categories

Resources

  • Blog
  • About the app
  • FAQ
  • Feedback

Legal

  • Privacy Policy
  • Terms of Service

© 2025 LetsGit.IT. All rights reserved.

LetsGit.IT/Categories/Java
Javamedium

Streams vs collections: what is the difference and a common pitfall?

Tags
#streams#collections#side-effects#functional
Back to categoryPractice quiz

Answer

A collection stores data; a stream describes a pipeline of operations (filter/map/reduce) to produce a result. Streams are typically single-use, and a common pitfall is side effects (mutating external state) inside `map/forEach`, which makes code harder to reason about.

List<String> activeNames = users.stream()
  .filter(User::isActive)
  .map(User::getName)
  .toList();

Related questions

Java
HashMap vs ConcurrentHashMap: when should you use each?
#java#collections#concurrency
Java
Parallel streams: when can they help and what are common pitfalls?
#java#streams#parallel
Java
`List.of(...)`: what kind of list does it create and a common gotcha?
#java#collections#immutability
Java
HashMap vs LinkedHashMap — what’s the practical difference?
#hashmap#linkedhashmap#collections
Java
Why is `ArrayList` not thread-safe, and how can you make list access safe?
#concurrency#arraylist#thread-safety
Java
HashSet vs TreeSet — what’s the difference?
#set#hashset#treeset