Java Map Quiz | 25 Tricky Coding MCQs on HashMap, TreeMap & More

Yogi Siddeswara 0
STUDYECRAT Java : Map Internals
60s
Java : Map Internals

Prove your skills in this interactive quiz

💻

Live Code

Run snippets directly

⏱️

Timed

60s per question

🏆

Scored

Earn 3D badges

Java Map Internals: Key Interview Points

1. HashMap Collision Handling

Map map = new HashMap<>();
map.put("Aa", 1); // Hash: 2112
map.put("BB", 2); // Same hash as "Aa"
// Both entries go in same bucket as linked list/TreeNode
  • Tip: Override hashCode() to minimize collisions
  • Real Use: Poor hash functions degrade performance to O(n)

2. LinkedHashMap Access Order

Map<Integer, String> map = new LinkedHashMap<>(16, 0.75f, true);
map.put(1, "A"); map.put(2, "B");
map.get(1); // Moves key 1 to end
// Iteration order: 2 → 1 (LRU behavior)
  • Tip: Perfect for LRU cache implementations
  • Real Use: Android's Glide library uses this for image caching

3. TreeMap Comparator Pitfall

Map<Integer, String> map = new TreeMap<>a, b) -> b - a);
map.put(1, "A"); map.put(Integer.MAX_VALUE, "B");
map.put(-1, "C"); // // Risk of integer overflow
  • Tip: Use Integer.compare(a, b) for safety
  • Real Use: Broken comparators cause missing entries

4. ConcurrentHashMap Atomic Operations

ConcurrentHashMap<String, Integer> map = new ConcurrentHashMap<>();
map.compute("A", (k, v) -> (v == null) ? 1 : v + 1);
// Thread-safe increment without explicit locks
  • Tip: Prefer compute() over get()+put() for atomicity
  • Real Use: Real-time counters in multithreaded apps

5. IdentityHashMap Reference Equality

Map<String, Integer> map = new IdentityHashMap<>();
map.put(new String("A"), 1);
map.put(new String("A"), 2); // Stores both entries
System.out.print(map.size()); // Output: 2
  • Tip: Useful for proxy object tracking
  • Real Use: Spring uses it for bean definition processing

💡 Pro Interview Tip

When asked about Map choices, always mention time complexity (HashMap O(1), TreeMap O(log n)), null handling, and thread safety requirements. Mention real-world cases like caching (LinkedHashMap) or concurrent counters (ConcurrentHashMap).


Java Data Types Quiz: 25 MCQs with Answers (Interview Prep)

Post a Comment

0 Comments