Dipende interamente da usi che attualmente fanno dei tuoi Optionals di Guava; e il primo problema risiede nelle differenze tra entrambi.
Tra gli altri:
- di Guava opzionale è astratta, Java 8 è definitiva;
- esistono metodi su Guava che non su Java 8 e viceversa.
Ciò significa che la prima cosa che devi determinare sono i tuoi diversi usi di Guava; questo condizionerà il modo in cui dovrai costruire un equivalente Java 8.
Ma data la differenza di API per entrambi, alcuni if
s lungo la strada sembrano inevitabili ...
Il mio suggerimento personale sarebbe di andare solo fino in fondo e sostituire tutti gli usi attuali di Guava di con Java 8 di ; e se è necessario un "periodo di eliminazione graduale", deprecate i metodi necessari e forniteli per tutto il tempo necessario, fino a quando l'opzione facoltativa di Guava non sarà esclusa completamente.
Maggiori informazioni contestuali è necessario; la tua base di codice usa ampiamente Opava di Guava? Come pensi di sostituirlo con Java 8? Come si usa l'opzionale di Guava al momento? Ti aspetteresti usi di istanze esistenti, ad esempio, in Stream .findAny()? Per prima cosa è necessaria una strategia di migrazione – fge
Come faresti con un'istruzione if? Hai provato qualcosa? –
nessun problema generale con la migrazione API, basta avere un singolo caso in cui ho bisogno di tale conversione – Libre13