From 561c9d11815b0fd06764ae8e1cb9a98143c68a29 Mon Sep 17 00:00:00 2001 From: Fabio Scotto di Santolo Date: Thu, 28 Nov 2019 20:00:58 +0100 Subject: [PATCH] Nuovi metodo sui Optional --- .../java/org/gym/fp/moderjava/OptionalTest.java | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/modern-java/src/main/java/org/gym/fp/moderjava/OptionalTest.java b/modern-java/src/main/java/org/gym/fp/moderjava/OptionalTest.java index 18793be..9557bb7 100644 --- a/modern-java/src/main/java/org/gym/fp/moderjava/OptionalTest.java +++ b/modern-java/src/main/java/org/gym/fp/moderjava/OptionalTest.java @@ -20,6 +20,8 @@ public class OptionalTest { Person person2 = new Person(Optional.ofNullable(myCar2)); out.println("My insurance's name is " + getCarInsuranceName(Optional.ofNullable(person2))); out.println("----------------------------------------"); + + out.println("----------------------------------------"); } static String getCarInsuranceName(Optional maybePerson) { @@ -30,4 +32,17 @@ public class OptionalTest { .orElse("Unknown"); } + static Insurance findCheapestInsurance(Person person, Car car) { + Insurance cheapestInsurance = new Insurance("Allianz"); + return cheapestInsurance; + } + + static Optional nullSafeFindCheapestInsurance(Optional person, Optional car) { + return person.flatMap(p -> car.map(c -> findCheapestInsurance(p, c))); +// if (person.isPresent() && car.isPresent()) { +// return Optional.of(findCheapestInsurance(person.get(), car.get())); +// } +// return Optional.empty(); + } + }