Mik azok a húrok?
A karakterlánc szó szerint karaktersorozat. Hé, mondtál karaktereket, nem egy primitív adattípus a Java-ban. Igen, szóval technikai értelemben az alapvető Java karakterlánc alapvetően karaktertömb.
Tehát a fenti " ROSE " karakterláncom a következőképpen ábrázolható:
Ebben az oktatóanyagban megtanulja-
- Mik azok a húrok?
- Miért érdemes használni a húrokat?
- Karakterlánc-szintaxis példák
- Vonós összefűzés
- Fontos Java karakterlánc-módszerek
Miért érdemes használni a húrokat?
A modern informatika egyik elsődleges funkciója az emberi nyelv feldolgozása.
A számok matematikához hasonlóan a nyelvi szimbólumok is fontosak a jelentés és a döntéshozatal szempontjából. Lehet, hogy a számítógép-felhasználók számára nem látható, a számítógépek ugyanolyan pontosan és pontosan dolgozzák fel a nyelvet a háttérben, mint egy számológép. A súgó párbeszédpanelek útmutatást nyújtanak. A menük választási lehetőséget nyújtanak. Az adatkijelzők pedig állapotokat, hibákat és a nyelv valós idejű változását mutatják.
Java programozóként a nyelv tárolásának és feldolgozásának egyik fő eszköze a String osztály lesz.
Karakterlánc-szintaxis példák
Most térjünk rá valamilyen szintaxisra, elvégre ezt Java-kódba kell írnunk.
A karakterlánc karakterek tömbje, amely a következőképpen jelenik meg:
//String is an array of characterschar[] arrSample = {'R', 'O', 'S', 'E'};String strSample_1 = new String (arrSample);
Technikai értelemben a karakterláncot a fenti példa a következőképpen határozza meg:
= new (argument);
Most nem mindig írhatjuk húrjainkat tömbökké; ennélfogva a Java karakterláncát a következőképpen definiálhatjuk:
//Representation of StringString strSample_2 = "ROSE";
Műszaki szempontból a fentiek a következők:
= ;
A String Class Java kiterjeszti az Object osztályt.
Húrok összefűzése:
Az összefűzés két vagy több húr összekapcsolása.
Vessen egy pillantást az alábbi képre-
Két húrunk van str1 = “Rock” és str2 = “Star”
Ha összeadjuk ezt a két karakterláncot, akkor eredménye str3 = “RockStar” lesz.
Ellenőrizze az alábbi kódrészletet, és elmagyarázza a karaktersorozat összefűzésének két módszerét.
Az első a String osztály „ concat ” módszerét használja, a második pedig a „+” operátor számtani használatát. Mindkettő ugyanazt a kimenetet eredményezi
nyilvános osztály Sample_String {public static void main (String [] érvel) {// Vonós összefűzésStr1 str1 = "Szikla";Str2 str2 = "Csillag";// 1. módszer: concat használataStr3 str3 = str1.concat (str2);System.out.println (str3);// 2. módszer: A "+" operátor használataStr4 str4 = str1 + str2;System.out.println (str4);}}
Fontos Java karakterlánc-módszerek:
Tegyünk fel néhány kérdést a Java String osztálynak, és hátha tud választ adni rájuk;)
Karakterlánc "Hosszúság" módszer
Hogyan fogja meghatározni az adott karakterlánc hosszát? Megadtam egy „hosszúságnak” nevezett módszert. Használja azt a karakterláncot, amelyhez meg kell találnia a hosszúságot.
nyilvános osztály Sample_String {public static void main (String [] args) {// A sztringünk ehhez az oktatóanyaghozString str_Sample = "RockStar";// Karakterlánc hosszaSystem.out.println ("A karakterlánc hossza: + str_Sample.length ());}}
Kimenet:
Length of String: 8
Karakterlánc "indexOf" módszer
Ha tudom a hosszát, hogyan találnám meg, melyik karakter melyik pozícióban van? Röviden, hogyan fogom megtalálni a karakter indexét?
Magad válaszoltál, haver, létezik egy „indexOf” módszer, amely segít meghatározni egy megadott karakter helyét.
nyilvános osztály Sample_String {public static void main (String [] args) {// Karakter a pozícióbanString str_Sample = "RockStar";System.out.println ("Karakter az 5. pozícióban: + str_Sample.charAt (5));// Adott karakter indexeSystem.out.println ("Az S karakter indexe: + str_Sample.indexOf ('S'));}}
Kimenet:
Character at position 5: tIndex of character 'S': 4
Karakteres karakterlánc metódus
A fenti kérdéshez hasonlóan, az indexet tekintve, hogyan ismerhetem meg az adott helyen lévő karaktert?
Ismét egyszerű !! Használja a „charAt” módszert, és adja meg azt az indexet, amelynek karakterét meg kell találnia.
nyilvános osztály Sample_String {public static void main (String [] args) {// Karakter a pozícióbanString str_Sample = "RockStar";System.out.println ("Karakter az 5. pozícióban: + str_Sample.charAt (5));}}
Kimenet:
Character at position 5: t
Karakterlánc "CompareTo" módszer
Szeretném ellenőrizni, hogy a valamilyen módszerrel létrehozott karakterlánc megegyezik-e valamivel, amellyel ellenőrizni akarom? Hogyan lehet összehasonlítani két húrot?
Használja az „CompareTo” módszert, és adja meg az összehasonlítani kívánt karakterláncot.
Használja a „CompareToIgnoreCase” elemet, ha nem szeretné, hogy az eredmény kis- és nagybetű legyen.Az eredmény értéke 0 lesz, ha az argumentumlánc megegyezik ezzel a karakterlánccal; 0-nál kisebb érték, ha ez a karaktersorozat lexikológiailag kisebb, mint a karakterlánc argumentuma; és 0-nál nagyobb érték, ha ez a karaktersorozat lexikológiailag nagyobb, mint a karakterlánc argumentum.
nyilvános osztály Sample_String {public static void main (String [] args) {// Összehasonlítás egy String-hezString str_Sample = "RockStar";System.out.println ("Összehasonlítás a 'ROCKSTAR' -val: + str_Sample.compareTo ("rockstar"));// Összehasonlítás ide: Ignore caseSystem.out.println ("Összehasonlítás a" ROCKSTAR "-val - Figyelmen kívül hagyott eset: + str_Sample.compareToIgnoreCase ("ROCKSTAR"));}}
Kimenet:
Compare To 'ROCKSTAR': -32Compare To 'ROCKSTAR' - Case Ignored: 0
Karakterlánc "Tartalmaz" módszer
Részben tudom, mit kellett volna tartalmaznia a karakterláncnak, hogyan tudnám megerősíteni, hogy a karakterlánc tartalmaz-e egy megadott karaktersorozatot?
Használja a „tartalmaz” módszert, és adja meg az ellenőrizni kívánt karaktereket.
Visszatér igaz akkor és csak akkor, ha ez a string tartalmazza a megadott sorrendben a char értékeket.nyilvános osztály Sample_String {public static void main (String [] args) {// Ellenőrizze, hogy a String tartalmaz-e szekvenciátString str_Sample = "RockStar";System.out.println ("A 'tar' sorrendet tartalmazza: + str_Sample.contains ("tar"));}}
Kimenet:
Contains sequence 'tar': true
Karakterlánc "endWith" módszerrel
Hogyan tudom megerősíteni, ha egy karakterlánc egy adott utótaggal végződik? Ismét válaszoltál rá. Használja a „endWith” metódust, és adja meg az utótagot az argumentumokban.
Visszatér igaz , ha a karaktereket által képviselt argumentum utótag karakter sorozat képviseli ezt az objektumot.nyilvános osztály Sample_String {public static void main (String [] args) {// Ellenőrizze, hogy egy adott szekvenciával végződik-eString str_Sample = "RockStar";System.out.println ("Végződik 'r' karakterrel: + str_Sample.endsWith ("r"));}}
Kimenet:
EndsWith character 'r': true
Karakterlánc "csereAll" és "csereFirst" metódus
Szeretném több helyen módosítani a karakterláncomat, és cserélni a karakterlánc több részét?
Java karakterlánc Cserélje ki, cserélje le az összes és cserélje le az első módszereket. Az argumentumokban megadhatja a karakterlánc azon részét, amelyet cserélni szeretne, és a helyettesítő karakterláncot.
nyilvános osztály Sample_String {public static void main (String [] args) {// Cserélje Rock szót a Duke szóraString str_Sample = "RockStar";System.out.println ("Cserélje ki a" Rock "szót a" Duke "kifejezésre: + str_Sample.replace ("Rock", "Duke"));}}
Kimenet:
Replace 'Rock' with 'Duke': DukeStar
Karakterlánc Java "tolowercase" és Java "toperpercase" módszer
Szeretném, ha az egész karakterláncomat kisbetűvel vagy nagybetűvel jelenítenék meg?
Csak használja a „toLowercase ()” vagy „ToUpperCase ()” metódust az átalakítandó karakterláncokkal szemben.
nyilvános osztály Sample_String {public static void main (String [] args) {// Konvertálás LowerCase-véString str_Sample = "RockStar";System.out.println ("Konvertálás LowerCase-be: + str_Sample.toLowerCase ());// Átalakítás UpperCase-beSystem.out.println ("Konvertálás UpperCase-ba: + str_Sample.toUpperCase ());}}
Kimenet:
Convert to LowerCase: rockstarConvert to UpperCase: ROCKSTAR
Fontos megjegyzendő pontok:
- A húr végső osztály ; azaz miután létrehozta az értéket nem lehet megváltoztatni. Így a vonós objektumokat megváltoztathatatlannak nevezzük.
- A Java virtuális gép (JVM) memóriahelyet hoz létre, különösen a String Constant Pool nevű karakterláncok számára . Ezért a String inicializálható „új” kulcsszó nélkül.
- A karakterlánc osztály a java.lang alá tartozik. Húr hierarchia . De nem kell importálni ezt az osztályt. A Java platform automatikusan biztosítja őket.
- A karakterlánc hivatkozás felülírható, de ez nem törli a tartalmat ; azaz ha
H1 karakterlánc = "hello";
h1 = "szia" + "világ";
akkor a "hello" karakterlánc nem törlődik. Csak elveszíti a markolatát.
- Több hivatkozás is használható ugyanahhoz a karakterlánchoz, de ugyanazon a helyen fog történni ; azaz ha
H1 karakterlánc = "hello";
Karakterlánc h2 = "szia";
H3 karakterlánc = "szia";
akkor a memóriában csak egy String „hello” -készlet jön létre 3 referenciával - h1, h2, h3
- Ha egy számot a „” -ban idézünk, akkor karakterlánc lesz belőle , és már nem szám. Ez azt jelenti, ha
String S1 = "A szám: + "123" + "456";
Rendszer. ki .println (S1);
akkor kinyomtatja: A szám: 123456
Ha az inicializálás ilyen:
String S1 = "A szám: + (123 + 456);
Rendszer. ki .println (S1);
akkor kinyomtatja: A szám: 579 Ennyi a húroké!