Launching soon
Something new for Java developers. Coming soon.
A place to learn, ask and grow your Java career, together.
Be the first in when we open the doors.
Learn
Prepare smarter for Java interviews.
Ask
Get real answers from Java developers.
Grow
Connect with people who've been there.
A little sneak peek
Sneak peek: sample data
Recent questions
I put an object into a HashMap, then updated one of its fields. Now get() returns null even though the entry is clearly still there.
Top answer
The key's hashCode() changed after you inserted it, so the map now looks in the wrong bucket. Keys should be immutable, or at least the fields used by equals() and hashCode() should never change while the object is in the map...
Our service has pauses every few minutes. I enabled GC logging but the output is a wall of numbers. Where do I even start?
Top answer
Start with three things per line: the pause type, the heap before and after, and the pause time. If the heap after a full collection keeps growing, you're probably looking at a leak rather than a tuning problem...
We have a lot of blocking HTTP calls. Is it worth switching to virtual threads, or is a tuned thread pool still the safer choice?
Top answer
For mostly blocking I/O, virtual threads are a great fit: you write the same simple blocking code but can run far more tasks at once. Watch out for long synchronized blocks, which can pin the carrier thread...
Want early access?
Drop your email.