Read the prompt
Every question is grounded in the same shared dataset of 14 people records, so you're never re-learning a new data shape -- just a new transform.
The complete guide
Modern interviews still use LeetCode, but there is a trend leaning toward solving modern problems. A lot of these problems now use streams, database queries, and connecting services. Java Book Club is built to lock in those skills.
The workflow
Every question is grounded in the same shared dataset of 14 people records, so you're never re-learning a new data shape -- just a new transform.
The browser IDE hands you a starter Solution class with the right
method signature already filled in. Fill in the body with whatever Java you
want -- loops, streams, whatever gets you to the right answer.
Clicking Run actually compiles and executes your code server-side against a real JDK, then shows expected vs. actual output side by side.
Under the hood
Your submission is written to a temporary Solution.java file and
compiled with the JDK that's running the server -- not a JavaScript sandbox,
not a subset of Java. Compile errors show the exact diagnostics javac gives you.
Compiled code runs in its own process with a 3-second timeout, against the same shared dataset shown in the Dataset panel, so nothing you write can affect another question or another run.
Output is normalized before comparing -- map keys are sorted, and for
Set results, order never matters. You're graded on the right
answer, not on matching some arbitrary formatting.
Categories
Map basics, field selection, numeric checks, and first filters -- plus a couple of array-conversion warm-ups.
filter, map, distinct, count, averages, Sets, and Optional results from findFirst / findAny.
Collectors.groupingBy with counting, mapping, averaging, and derived keys.
Comparator chains, reversed ordering, limits, and thenComparing.
Multi-step data transforms that combine grouping, sorting, and summaries in one question.
Stuck on a question?
Open any question in the practice IDE and look for the "Stuck? How to solve this" button under the prompt. It expands into a short article written specifically for that question -- not the literal answer, but the approach: which method to reach for, the shape of the pipeline, and the one mistake people usually make on that exact problem.
What it looks like
A walkthrough is always three parts: a plain-English restatement of the goal, an Approach paragraph naming the exact methods to chain together, and a Watch out paragraph calling out the one mistake that trips people up on that specific question.
FAQ
Some basics help (variables, loops, generics), but the Beginner category assumes very little. Each question's article walks through the exact method to reach for.
The server compiles and runs your code with the same JDK it's deployed on (Java 21), so modern syntax -- var, records, switch expressions, text blocks -- all work.
No. Submissions are compiled in a temporary workspace that's deleted right after your run finishes. Nothing is stored server-side. Progress (which questions you've solved) is tracked only in your browser's local storage.
Anything in the standard library (java.util, java.util.stream,
etc.) works. There's no external dependency access, so the focus stays on
standard Java collection and stream APIs.
Your solve method's return value is compared against a
precomputed expected value for that question. Lists must match order
exactly; Maps and Sets are compared by contents only, regardless of key or
iteration order.