Question
Which practice avoids a common mistake with TreeSet and NavigableSet?
- Do not ignore comparator consistency, because broken ordering rules can make membership behavior look inconsistent.
- Ignore the TreeSet and NavigableSet issue and rely on team discipline instead of APIs or contracts.
- Silence the TreeSet and NavigableSet problem by using raw types, broad catches, or shared mutable state.
- Prefer the version of TreeSet and NavigableSet 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 ignore comparator consistency, because broken ordering rules can make membership behavior look inconsistent.
Do not ignore comparator consistency, because broken ordering rules can make membership behavior look inconsistent. This is a common failure mode in real Java code and a frequent interview follow-up.
Track: Java