diff --git a/gradlew b/gradlew old mode 100755 new mode 100644 diff --git a/src/test/java/lambda/part1/exercise/Lambdas01Exercise.java b/src/test/java/lambda/part1/exercise/Lambdas01Exercise.java index 14cfc0d..04b28c5 100644 --- a/src/test/java/lambda/part1/exercise/Lambdas01Exercise.java +++ b/src/test/java/lambda/part1/exercise/Lambdas01Exercise.java @@ -1,9 +1,14 @@ package lambda.part1.exercise; +import com.google.common.base.Optional; +import com.google.common.base.Predicate; +import com.google.common.collect.FluentIterable; import com.google.common.collect.ImmutableList; import data.Person; import org.junit.jupiter.api.Test; +import java.util.Arrays; +import java.util.Comparator; import java.util.List; import static org.junit.jupiter.api.Assertions.assertArrayEquals; @@ -20,6 +25,12 @@ void sortPersonsByAge() { }; // TODO use Arrays.sort + Arrays.sort(persons, new Comparator() { + @Override + public int compare(Person p1, Person p2) { + return Integer.compare(p1.getAge(), p2.getAge()); + } + }); assertArrayEquals(persons, new Person[]{ new Person("name 3", "lastName 3", 20), @@ -39,6 +50,18 @@ void findFirstWithAge30() { Person person = null; // TODO use FluentIterable + Optional personOptional = + FluentIterable.from(persons) + .firstMatch(new Predicate() { + @Override + public boolean apply(Person p) { + return p.getAge()==30; + } + }); + + + if (personOptional.isPresent()) + person = personOptional.get(); assertEquals(person, new Person("name 1", "lastName 2", 30)); } diff --git a/src/test/java/lambda/part1/exercise/Lambdas02Exercise.java b/src/test/java/lambda/part1/exercise/Lambdas02Exercise.java index 8f47d34..f76abf5 100644 --- a/src/test/java/lambda/part1/exercise/Lambdas02Exercise.java +++ b/src/test/java/lambda/part1/exercise/Lambdas02Exercise.java @@ -1,9 +1,12 @@ package lambda.part1.exercise; +import com.google.common.base.Optional; +import com.google.common.collect.FluentIterable; import com.google.common.collect.ImmutableList; import data.Person; import org.junit.jupiter.api.Test; +import java.util.Arrays; import java.util.List; import static org.junit.jupiter.api.Assertions.assertArrayEquals; @@ -19,6 +22,7 @@ void sortPersonsByAge() { }; // TODO use Arrays.sort + Arrays.sort(persons, (o1, o2) -> Integer.compare(o1.getAge(), o2.getAge())); assertArrayEquals(persons, new Person[]{ new Person("name 3", "lastName 3", 20), @@ -38,6 +42,12 @@ void findFirstWithAge30() { Person person = null; // TODO use FluentIterable + Optional personOptional = FluentIterable + .from(persons) + .firstMatch(p -> p.getAge() == 30); + + if (personOptional.isPresent()) + person = personOptional.get(); assertEquals(person, new Person("name 1", "lastName 2", 30)); }