Provjeravanje praznih ili praznih nizova u Javi

1. Uvod

U ovom uputstvu proći ćemo kroz neke načine provjere praznih ili praznih nizova u Javi. Imamo nekoliko pristupa maternjem jeziku, kao i nekoliko knjižnica.

2. Prazno nasuprot praznog

Naravno, prilično je uobičajeno znati kada je niz prazan ili prazan, ali pobrinimo se da smo na istoj stranici s našim definicijama.

Niz smatramo prazan ako je i jedno i drugo null ili niz bez bilo koji duljina. Ako se niz sastoji samo od razmaka, tada ga nazivamo prazan.

Za Javu razmaci su znakovi poput razmaka, kartica i tako dalje. Pogledaj Character.isWhitespace za primjere.

3. Prazne žice

3.1. Uz Javu 6 i novije verzije

Ako smo barem na Javi 6, tada ćemo najjednostavniji način provjeriti postoji li prazan niz je Niz # jePrazan:

boolean isEmptyString (string niza) {return string.isEmpty (); }

Da bismo ga učinili ništetnim, moramo dodati dodatnu provjeru:

boolean isEmptyString (string niza) string.isEmpty (); 

3.2. S Javom 5 i ispod

Niz # jePrazan predstavljen je s Javom 6. Za Javu 5 i starije možemo koristiti Duljina # niza umjesto toga.

boolean isEmptyString (string niza) return string == null 

Zapravo, Niz # jePrazan je samo prečac do Duljina # niza.

4. Prazne žice

Oba Niz # jePrazan i Duljina # niza može se koristiti za provjeru prazan žice.

Ako i mi želimo otkriti prazan žice, to možemo postići uz pomoć Niz # obrezivanje. Hoće uklonite sve vodeće i prateće razmake prije izvođenja provjere.

boolean isBlankString (string niza) string.trim (). isEmpty (); 

Biti precizan, Niz # obrezivanje uklonit će sve vodeće i prateće znakove s Unicode kodom manjim ili jednakim U + 0020.

I također zapamtite to Nizsu nepromjenjivi, pa pozivanje podrezati zapravo neće promijeniti temeljni niz.

5. Provjera graha

Još jedan način provjere prazan stringovi su regularni izrazi. Ovo dobro dolazi, na primjer, uz provjeru Java Bean validacije:

@Pattern (regexp = "\ A (?! \ s * \ Z). +") String someString;

Dati regularni izraz osigurava da prazni ili prazni nizovi neće provjeriti valjanost.

6. Uz Apache Commons

Ako je u redu dodavanje ovisnosti, možemo koristiti Apache Commons Lang. Ovo ima mnoštvo pomagača za Javu.

Ako koristimo Maven, trebamo dodati commons-lang3 ovisnost o našoj pom:

 org.apache.commons commons-lang3 

Između ostalog, ovo nam daje StringUtils.

Ova klasa dolazi s metodama poput prazno je, isBlank i tako dalje:

StringUtils.isBlank (niz)

Ovaj poziv čini isto što i naš vlastiti isBlankString metoda. Nužno je sigurno i također provjerava razmake.

7. S Guavom

Još jedna poznata knjižnica koja donosi određene uslužne programe povezane s nizom je Googleova Guava. Počevši od verzije 23.1, Guava postoje dva okusa: android i jre. Okus Android cilja Android i Java 7, dok okus JRE vrijedi za Javu 8.

Ako ne ciljamo Android, možemo samo dodati okus JRE u svoj pom:

 com.google.guava guava 28,0-jre 

Klasa Guavas Strings dolazi s metodom Strings.isNullOrEmpty:

Strings.isNullOrEmpty (niz)

Provjerava je li zadani niz null ili prazan, ali neće provjeriti postoje li nizovi samo za razmake.

8. Zaključak

Postoji nekoliko načina da provjerite je li niz prazan ili nije. Često želimo provjeriti je li niz prazan, što znači da se sastoji samo od razmaka.

Najprikladniji je način koristiti Apache Commons Lang, koji pruža pomagače poput StringUtils.isBlank. Ako se želimo držati obične Jave, možemo koristiti kombinaciju Niz # obrezivanje s bilo kojim Niz # jePrazan ili Duljina # niza. Za provjeru graha mogu se umjesto toga koristiti regularni izrazi.

Svakako provjerite sve ove uzorke na GitHubu.