Merge pull request #8109 from martinvw/feature/BAEL-3392
[BAEL-3392] Debugging Java 8 Streams with IntelliJ
This commit is contained in:
commit
1ff66911d3
|
@ -0,0 +1,19 @@
|
|||
package com.baeldung.streams.debug.entity;
|
||||
|
||||
public class Customer {
|
||||
private final String name;
|
||||
private final int age;
|
||||
|
||||
public Customer(String name, int age) {
|
||||
this.name = name;
|
||||
this.age = age;
|
||||
}
|
||||
|
||||
public String getName() {
|
||||
return name;
|
||||
}
|
||||
|
||||
public int getAge() {
|
||||
return age;
|
||||
}
|
||||
}
|
|
@ -0,0 +1,18 @@
|
|||
package com.baeldung.streams.debug;
|
||||
|
||||
import static org.assertj.core.api.Assertions.assertThat;
|
||||
|
||||
import java.util.stream.IntStream;
|
||||
|
||||
import org.junit.Test;
|
||||
|
||||
public class Example1 {
|
||||
@Test
|
||||
public void whenDebugging_thenInformationIsShown() {
|
||||
int[] listOutputSorted = IntStream.of(-3, 10, -4, 1, 3)
|
||||
.sorted()
|
||||
.toArray();
|
||||
|
||||
assertThat(listOutputSorted).isSorted();
|
||||
}
|
||||
}
|
|
@ -0,0 +1,36 @@
|
|||
package com.baeldung.streams.debug;
|
||||
|
||||
import static org.assertj.core.api.Assertions.assertThat;
|
||||
|
||||
import java.util.Arrays;
|
||||
import java.util.List;
|
||||
import java.util.Optional;
|
||||
import java.util.stream.Stream;
|
||||
|
||||
import org.junit.Test;
|
||||
|
||||
import com.baeldung.streams.debug.entity.Customer;
|
||||
|
||||
public class Example2 {
|
||||
@Test
|
||||
public void whenDebugging_thenInformationIsShown() {
|
||||
List<Optional<Customer>> customers = Arrays.asList(
|
||||
Optional.of(new Customer("John P.", 15)),
|
||||
Optional.of(new Customer("Sarah M.", 78)),
|
||||
Optional.empty(),
|
||||
Optional.of(new Customer("Mary T.", 20)),
|
||||
Optional.empty(),
|
||||
Optional.of(new Customer("Florian G.", 89)),
|
||||
Optional.empty()
|
||||
);
|
||||
|
||||
long numberOf65PlusCustomers = customers.stream()
|
||||
.flatMap(c -> c.map(Stream::of)
|
||||
.orElseGet(Stream::empty))
|
||||
.mapToInt(Customer::getAge)
|
||||
.filter(c -> c > 65)
|
||||
.count();
|
||||
|
||||
assertThat(numberOf65PlusCustomers).isEqualTo(2);
|
||||
}
|
||||
}
|
Loading…
Reference in New Issue