Which list is produced by mapping toLowerCase?
List<String> r = Stream.of("A","B","C").map(String::toLowerCase).toList();Read the full question →Every question is hand-checked, every answer comes with an explanation, and your progress builds into a clear picture of where you stand.
Every Java question shows its code before you answer, so you are reading real Java, not a description of it.
Once you attempt a question you get the reasoning, not just a tick. That matters most on Java, where collections behaviour, equals and hashcode contracts, string interning, checked versus unchecked exceptions, stream laziness, and the concurrency primitives.
Progress is tracked per topic across the 44 Java topics, so revision points at the gaps instead of the whole list.
541 Java questions right now: 112 easy, 211 medium and 218 hard. That number is read straight from the question table when this page is built, so it is never a rounded marketing figure.
No. Every Java question, including its code snippet, its difficulty and its topic, is readable without signing in. You need a free account only to submit an answer, see which option is correct, and read the worked explanation. We keep it that way so the platform stays honest about what you actually got right.
Collections behaviour, equals and hashCode contracts, string interning, checked versus unchecked exceptions, stream laziness, and the concurrency primitives.
44 distinct topics are tagged on the Java questions, including stream pipelines, primitives and char width, if switch loops, try-with-resources, main entry point, final and constants. The topic labels come from the questions themselves, so the list matches what you will actually be asked.
Yes. Reading is free and unlimited. A free account unlocks answering, explanations and progress tracking. Pro (₹199 per month) adds AI explanations and AI-graded guesstimates on top; it is not needed to practise Java MCQs.
Banking, large-scale services, Android, and any company running Spring in production.
These are 12 of the 541 Java questions in the library, pulled live from the question table. The snippet, the difficulty and the topic are all here. The answer options and the explanation are not. Those need a free account.
Collections behaviour, equals and hashCode contracts, string interning, checked versus unchecked exceptions, stream laziness, and the concurrency primitives.
List<String> r = Stream.of("A","B","C").map(String::toLowerCase).toList();Read the full question →int i = 5; int s = i++ + i++; System.out.println(i);Read the full question →record Point(int x, int y) {}
static String format(Object o) {
return switch (o) {
case Point(int x, int y) -> "x+y=" + (x + y);
default -> "?";
};
}Read the full question →long c = IntStream.iterate(1, i -> i*2).limit(3).count();\nSystem.out.println(c);Read the full question →class A {\n static { System.out.print("A"); }\n A() { System.out.print("B"); }\n}\nnew A();Read the full question →int x = 5;\nx = x++;\nSystem.out.println(x);Read the full question →Integer a = 200;\nInteger b = 200;\nSystem.out.println(a == b);Read the full question →int x;\nif (false) x = 5;\nSystem.out.println(x);Read the full question →List<Supplier<Integer>> ss = new ArrayList<>();\nfor (int i = 0; i < 3; i++) { ss.add(() -> i); }Read the full question →String a = new String("x");\nString b = new String("x");\nSystem.out.println(a.equals(b));Read the full question →System.out.println(IntStream.range(0,3).reduce(0, Integer::sum));Read the full question →CompletableFuture<Integer> f = CompletableFuture.completedFuture(5);\nSystem.out.println(f.get());Read the full question →We keep the correct answer, the explanation and the scoring behind sign-in so the platform stays honest, which is why the correct option and the worked explanation for every Java question stay behind a free account. Signing in is free and takes a few seconds.
Banking, large-scale services, Android, and any company running Spring in production.