Java >> Programma Java >  >> Tag >> boolean

Verifica se null Boolean è true risulta in un'eccezione

Se non ti piacciono i controlli nulli aggiuntivi:

if (Boolean.TRUE.equals(value)) {...}

Quando hai un boolean può essere true o false . Eppure quando hai un Boolean può essere Boolean.TRUE , Boolean.FALSE o null come qualsiasi altro oggetto.

Nel tuo caso particolare, il tuo Boolean è null e il if istruzione attiva una conversione implicita in boolean che produce il NullPointerException . Potresti invece aver bisogno di:

if(bool != null && bool) { ... }

Usa Apache BooleanUtils.

(Se le massime prestazioni sono la priorità più importante nel tuo progetto, guarda una delle altre risposte per una soluzione nativa che non richiede l'inclusione di una libreria esterna.)

Non reinventare la ruota. Sfrutta ciò che è già stato creato e usa isTrue() :

BooleanUtils.isTrue( bool );

Controlla se un Boolean value è true, gestendo null restituendo false .

Se non sei limitato alle librerie che puoi "consentire" di includere, ci sono un sacco di fantastiche funzioni di supporto per tutti i tipi di casi d'uso, incluso Booleans e Strings . Ti suggerisco di esaminare le varie librerie Apache e vedere cosa offrono già.


Etichetta Java