Ikm Java 8 Test Updated -

List<String> list = Arrays.asList("a", "b"); Stream<String> stream = list.stream().filter(s -> s.length() > 5); // No terminal operation The updated test asks: What is the state of the stream after line 2? Many incorrectly think filtering occurs immediately. It does not. The pipeline is not executed until a terminal operation like count() or collect() is invoked. A tricky question might present:

ZonedDateTime zdt = ZonedDateTime.now(ZoneId.of("America/New_York")); LocalDateTime ldt = zdt.toLocalDateTime(); // What is the relationship? Answer: ldt has the same date and time fields but no zone. Misunderstanding can lead to errors when comparing with another ZonedDateTime . The updated test includes code where a lambda captures a loop variable. For example: ikm java 8 test updated

Map<String, List<Integer>> map = Stream.of("A", "BB", "CCC") .collect(Collectors.groupingBy(s -> String.valueOf(s.length()), Collectors.mapping(String::length, Collectors.toList()))); System.out.println(map); What is the output? A) 1=[1], 2=[2], 3=[3] B) "1"=[1], "2"=[2], "3"=[3] C) 1=[1], 2=[2] D) Compilation error List&lt;String&gt; list = Arrays

LocalDate date = LocalDate.of(2024, Month.FEBRUARY, 29); date = date.plusYears(1); System.out.println(date); A) 2025-02-28 B) 2025-03-01 C) 2025-02-29 (compilation error) D) RuntimeException The pipeline is not executed until a terminal

Optional<String> opt = Optional.ofNullable(null); System.out.println(opt.get()); Answer: Throws NoSuchElementException because ofNullable(null) returns Optional.empty() , and calling get() on empty throws. The trap is thinking ofNullable magically avoids the exception—it only avoids NullPointerException during creation. A typical new question:

Schedule your IKM test today, but only after completing the study plan above. A score of 8+ is within reach if you respect the update. Have you taken the updated IKM Java 8 test? Share your experience in the comments, and let us know which topics surprised you the most.

B. The key is String.valueOf(s.length()) , which yields strings "1" , "2" , "3" . Then mapping(String::length) takes each string ("A", "BB", "CCC") and gets its length (1,2,3), collecting into a list. Question 2 (Time API) What is the result of: