Üres vagy üres karakterláncok ellenőrzése a Java-ban
1. Bemutatkozás
Ebben az oktatóanyagban áttekintünk néhány módot az üres vagy üres karakterláncok ellenőrzésére a Java-ban. Van néhány anyanyelvi megközelítésünk, valamint néhány könyvtárunk.
2. Üres kontra üres
Természetesen elég gyakori tudni, hogy egy karakterlánc üres vagy üres-e, de győződjünk meg arról, hogy ugyanazon az oldalon vagyunk a definícióinkkal.
Húrnak tekintjük üres ha akár nulla vagy húr nélkül Bármi hossz. Ha egy karakterlánc csak fehér szóközből áll, akkor hívjuk üres.
A Java esetében a szóközök olyan karakterek, mint a szóköz, a tabulátorok és így tovább. Nézd meg Karakter.isWhitespace például.
3. Üres húrok
3.1. Java 6-os és újabb verziókkal
Ha legalább a Java 6-on vagyunk, akkor a legegyszerűbb módja annak ellenőrzésére üres karakterlánc az A (z) # karakterlánc üres:
logikai isEmptyString (String string) {return string.isEmpty (); }
Annak érdekében, hogy ez semleges legyen, hozzá kell adnunk egy extra ellenőrzést:
logikai isEmptyString (String string) string.isEmpty ();
3.2. Java 5-tel és az alábbiakkal
A (z) # karakterlánc üres Java 6-os verzióval vezették be Karakterlánc # hossza helyette.
logikai isEmptyString (String string) visszatérési karakterlánc == null
Valójában, A (z) # karakterlánc üres csak egy parancsikon a Karakterlánc # hossza.
4. Üres húrok
Mindkét A (z) # karakterlánc üres és Karakterlánc # hossza felhasználható az ellenőrzésre üres húrok.
Ha mi is fel akarjuk fedezni üres húrok, ezt elérhetjük a segítségével Karakterlánc # trim. Fog az ellenőrzés elvégzése előtt távolítsa el az összes vezető és záró szóközt.
logikai isBlankString (String string) string.trim (). isEmpty ();
Pontosabban: Karakterlánc # trim eltávolítja az összes vezető és záró karaktert, amelyek Unicode kódja legfeljebb U + 0020.
És arra is emlékezzen Húrs változhatatlanok, ezért hívó trim valójában nem változtatja meg az alapul szolgáló karakterláncot.
5. Babellenőrzés
Egy másik módja annak ellenőrzésére üres a húrok reguláris kifejezések. Ez jól jön például a Java Bean validációval:
@Minta (regexp = "\ A (?! \ s * \ Z). +") Karakterlánc néhányString;
A megadott reguláris kifejezés biztosítja, hogy az üres vagy üres karakterláncok nem érvényesülnek.
6. Apache Commons-szal
Ha a függőségek hozzáadása rendben van, használhatjuk az Apache Commons Lang alkalmazást. Ennek rengeteg segítője van a Java számára.
Ha Mavenet használunk, hozzá kell adnunk a commons-lang3 függőség a pom-tól:
org.apache.commons commons-lang3
Többek között ez ad nekünk StringUtils.
Ez az osztály olyan módszerekkel jár, mint üres, isBlank stb:
StringUtils.isBlank (karakterlánc)
Ez a hívás ugyanazt teszi, mint a sajátunk isBlankString módszer. Semleges és ellenőrzi a szóközöket is.
7. Guavával
Egy másik jól ismert könyvtár, amely bizonyos karakterláncokkal kapcsolatos segédprogramokat hoz létre, a Google Guava. A 23.1 verziótól kezdve a Guava két íze van: android és jre. Az Android íz az Androidot és a Java 7-et célozza meg, míg a JRE íz a Java 8-ra vonatkozik.
Ha nem az Android-ot célozzuk meg, akkor egyszerűen hozzáadhatjuk a JRE ízt a pomunkhoz:
com.google.guava guava 28.0-jre
A Guavas Strings osztály egy módszerrel jár Strings.isNullOrEmpty:
Strings.isNullOrEmpty (karakterlánc)
Ellenőrzi, hogy egy adott karakterlánc null vagy üres-e, de nem fogja ellenőrizni, hogy vannak-e csak üres szóközök.
8. Következtetés
Többféle módon ellenőrizheti, hogy egy karakterlánc üres-e vagy sem. Gyakran azt is ellenőrizni szeretnénk, hogy egy karakterlánc üres-e, vagyis csak szóköz karakterekből áll.
A legkényelmesebb módszer az Apache Commons Lang használata, amely olyan segítségeket nyújt, mint pl StringUtils.isBlank. Ha ragaszkodni akarunk a sima Java-hoz, használhatjuk ezek kombinációját Karakterlánc # trim akármelyikkel A (z) # karakterlánc üres vagy Karakterlánc # hossza. A babellenőrzéshez rendszeres kifejezéseket lehet használni helyette.
Ügyeljen arra, hogy ellenőrizze ezeket a mintákat a GitHubon.