Loading ...

Google Guava: usare gli Optional

Google Guava: usare gli Optional

Google Guava è una libreria per Java con diverse utilità.

Oggi vediamo come usare gli Optional.

Se usate Maven aggiungete questa dipendenza:

        <!-- https://mvnrepository.com/artifact/com.google.guava/guava -->
        <dependency>
            <groupId>com.google.guava</groupId>
            <artifactId>guava</artifactId>
            <version>27.0-jre</version>
        </dependency>

Un Optional rappresenta un oggetto immutabile usato per contenere oggetti non-nulli.

Qui sotto un esempio di codice:

import com.google.common.base.Optional;

public class Main {

    public static void main(String[] args) {
        Integer num1 = null;
        Integer num2 = 20;

        Optional opt1 = Optional.fromNullable(num1);
        Optional opt2 = Optional.fromNullable(num2);

        System.out.println(opt1.isPresent());
        System.out.println(opt2.isPresent());

        int value1 = opt1.or(0);
        int value2 = opt2.or(0);
        System.out.println(value1 + value2);
    }

}

Alla fine della fiera abbiamo sommato due numeri, di cui il primo impostato a null.

Il codice non da errore, in quanto grazie ad Optional gli abbiamo impostato un valore di default nel caso fosse nulla.

In realtà Java dalla versione 8 mette già a disposizione gli Optional; usate entrambi per trovare le differenze!

Enjoy!