Validare stringhe con Apache Commons StringUtils
Tra le librerie Apache Commons Lang, ho trovato una classe molto comoda: StringUtils.
In pratica ci permette di controllare le stringhe con una sintassi più semplice e compatta.
In genere per controllare una stringa siamo abituati a fare così:
String str;
if (str != null && str.equals("CIAO") {
// DO STUFF
}
Oppure:
String str;
if ("CIAO".equals(str) {
// DO STUFF
}
Nulla di male in tutto ciò, a parte il fatto che il metodo equals non è null-safe.
Nel senso che dobbiamo sempre anche fare un test sul null, perchè di default equals non lo fa.
Possiamo rimediare con StringUtils e i suoi metodi:
- isBlank
- isEmpty
- isNotBlank
- isNotEmpty
Prendendo i secondi due, la differenza è questa:
- isNotBlank controlla che la stringa non sia vuota, null o con soli spazi
- isNotEmpty controlla che la stringa non sia vuota o null
Gli atri due metodi fanno il controllo al contrario.
Quindi, se volessimo svolgere operazioni solo se la stringa non è vuota, null o con soli spazi:
String str;
if (StringUtils.isNotEmpty(str)) {
// DO STUFF
}
Se invece va bane anche solo la spazio possiamo usare isNotBlank (anche se mi suonerebbe strano).
Enjoy!
java apache apache commos string stringutils isnotblank isnotempty equals null
Commentami!