Java Karakterlánc-manipuláció EXAMPLE-vel

Miben vannak a stringek Java?

A karakterlánc szó szerint karakterek sorozata. Hé, karaktereket mondtál, nem primitív adatbevitel? Java. Igen, tehát technikai értelemben az alap Java A karakterlánc alapvetően karakterek tömbje.

Tehát a fenti "ROSE” a következőképpen ábrázolható –

Java Húr

Miért használja a Strings-t?

A modern számítástechnika egyik fő funkciója az emberi nyelv feldolgozása.

Ahogyan a számok fontosak a matematikában, a nyelvi szimbólumok is fontosak a jelentés és a döntéshozatal szempontjából. Bár előfordulhat, hogy a számítógép-felhasználók nem látják, a számítógépek a háttérben olyan pontosan és pontosan dolgozzák fel a nyelvet, mint egy számológép. A Súgó párbeszédpanelek utasításokat adnak. A menük választási lehetőséget kínálnak. Az adatkijelzők pedig az állapotokat, a hibákat és a nyelv valós idejű változásait mutatják.

Ennek Java programozó, a nyelv tárolásának és feldolgozásának egyik fő eszköze a String osztály lesz.

Példák karakterlánc szintaxisra

Most pedig térjünk rá egy szintaxisra, elvégre ezt be kell írnunk Java kód nem az.

A karakterlánc karakterek tömbje, amelyet a következőképpen ábrázolunk:

//String is an array of characters
char[] arrSample = {'R', 'O', 'S', 'E'};
String strSample_1 = new String (arrSample);

Technikai értelemben a karakterlánc definíciója a következő a fenti példában:

= new (argument);

Most már mindig nem írhatjuk ki a karakterláncainkat tömbként; így definiálhatjuk a karakterláncot Java az alábbiak szerint:

//Representation of String
String strSample_2 = "ROSE";

Technikai értelemben a fentiek a következők:

= ;

A Vonós osztály Java nyúlik a Objektum osztály.

Karakterlánc összefűzése:

Az összefűzés két vagy több karakterlánc összekapcsolása.

Nézze meg az alábbi képet -

Példák karakterlánc szintaxisra

Két karakterláncunk van: str1 = "Rock" és str2 = "Star"

Ha ezt a két karakterláncot összeadjuk, akkor egy str3= „RockStar” eredményt kapunk.

Ellenőrizze az alábbi kódrészletet, és elmagyarázza a karakterlánc-összefűzés végrehajtásának két módszerét.

Először a „concat” String osztály metódusa, a második pedig aritmetikai „+” operátort használ. Mindkettő ugyanazt a kimenetet eredményezi

public class Sample_String{
  public static void main(String[] args){
//String Concatenation
String str1 = "Rock";
String str2 = "Star";
//Method 1 : Using concat
String str3 = str1.concat(str2);
System.out.println(str3);
//Method 2 : Using "+" operator
String str4 = str1 + str2;
System.out.println(str4);
}
}

Várható teljesítmény:

RockStar
RockStar

fontos Java string metódusok:

Java karakterlánc módszerek

Kérdezzük meg a Java Tegyen fel néhány kérdést az osztálynak, és nézze meg, válaszol-e rájuk:

String „hosszúság” módszer

Hogyan határozza meg az adott karakterlánc hosszát? Megadtam egy módszert, az úgynevezett "hossz“. Használja a String ellen, hogy megtalálja a hosszát.

public class Sample_String{
  public static void main(String[] args){  //Our sample string for this tutorial
  String str_Sample = "RockStar";
  //Length of a String
  System.out.println("Length of String: " + str_Sample.length());}}

Várható teljesítmény:

Length of String: 8

String „indexOf” módszer

Ha tudom a hosszát, hogyan találhatnám meg, hogy melyik karakter melyik pozícióban van? Röviden, hogyan találom meg egy karakter indexét?

Azt válaszoltad magadnak, haver, van egy „indexOf” módszer, amely segít meghatározni egy adott karakter helyét, amelyet megadott.

public class Sample_String{
  public static void main(String[] args){//Character at position
String str_Sample = "RockStar";
System.out.println("Character at position 5: " + str_Sample.charAt(5));
//Index of a given character
System.out.println("Index of character 'S': " + str_Sample.indexOf('S'));}}

Várható teljesítmény:

Character at position 5: t
Index of character 'S': 4

Karakterlánc „charAt” módszer

A fenti kérdéshez hasonlóan, az index alapján honnan ismerhetem meg a karaktert az adott helyen?

Megint egy egyszerű!! Használja a "charAt” módszert, és adja meg az indexet, amelynek karakterét meg kell találnia.

public class Sample_String{
  public static void main(String[] args){//Character at position
String str_Sample = "RockStar";
System.out.println("Character at position 5: " + str_Sample.charAt(5));}}

Várható teljesítmény:

Character at position 5: t

String „CompareTo” metódus

Szeretném ellenőrizni, hogy a valamilyen metódus által generált karakterlánc megegyezik-e azzal, amit ellenőrizni akarok? Hogyan hasonlítsam össze a két karakterláncot?

Használja a "módszert"összehasonlítani” és adja meg az összehasonlítani kívánt karakterláncot.

Használja a „compareToIgnoreCase” opciót arra az esetre, ha nem szeretné, hogy az eredmény érzékeny legyen a kis- és nagybetűkre.

Az eredmény 0 lesz, ha az argumentum karakterlánc egyenlő ezzel a karakterlánccal; 0-nál kisebb érték, ha ez a karakterlánc lexikográfiailag kisebb, mint a karakterlánc argumentum; és 0-nál nagyobb érték, ha ez a karakterlánc lexikográfiailag nagyobb, mint a string argumentum.

public class Sample_String{
  public static void main(String[] args){//Compare to a String
String str_Sample = "RockStar";
  System.out.println("Compare To 'ROCKSTAR': " + str_Sample.compareTo("rockstar"));
  //Compare to - Ignore case
  System.out.println("Compare To 'ROCKSTAR' - Case Ignored: " + str_Sample.compareToIgnoreCase("ROCKSTAR"));}}

Várható teljesítmény:

Compare To 'ROCKSTAR': -32
Compare To 'ROCKSTAR' - Case Ignored: 0

String „Tartalmaz” módszer

Részben tudom, hogy mit kellett volna tartalmaznia a karakterláncnak. Hogyan erősíthetem meg, hogy a karakterlánc tartalmaz-e egy általam megadott karaktersorozatot?

Használja a "módszert"tartalmaz” és adja meg az ellenőrizni kívánt karaktereket.

Visszatér igaz akkor és csak akkor, ha ez a karakterlánc tartalmazza a megadott char értékek sorozatát.

public class Sample_String{
  public static void main(String[] args){  //Check if String contains a sequence
String str_Sample = "RockStar";
  System.out.println("Contains sequence 'tar': " + str_Sample.contains("tar"));}}

Várható teljesítmény:

Contains sequence 'tar': true

String „endsWith” metódus

Hogyan ellenőrizhetem, hogy egy karakterlánc egy adott utótaggal végződik? Megint válaszoltál. Használja az „endsWith” metódust, és adja meg az utótagot az argumentumokban.

Visszatér igaz ha az argumentum által képviselt karaktersorozat az objektum által képviselt karaktersorozat utótagja.

public class Sample_String{
  public static void main(String[] args){  //Check if ends with a particular sequence
String str_Sample = "RockStar";
  System.out.println("EndsWith character 'r': " + str_Sample.endsWith("r"));}}

Várható teljesítmény:

EndsWith character 'r': true

Karakterlánc „replaceAll” és „replaceFirst” Method

Szeretném több helyen módosítani a karakterláncomat, és a karakterlánc több részét kicserélni?

Java Karakterlánc Csere, csereAll és changeFirst metódusok. Az argumentumokban megadhatja a String cserélni kívánt részét és a helyettesítő Stringet.

public class Sample_String{
  public static void main(String[] args){//Replace Rock with the word Duke
String str_Sample = "RockStar";
System.out.println("Replace 'Rock' with 'Duke': " + str_Sample.replace("Rock", "Duke"));}}

Várható teljesítmény:

Replace 'Rock' with 'Duke': DukeStar

Húr Java "kisbetűvel" és Java „nagybetűs” módszer

Azt szeretném, hogy a teljes karakterlánc kisbetűvel vagy nagybetűvel jelenjen meg?

Csak használja a „toLowercase()” vagy „ToUpperCase()” metódusokat a konvertálandó karakterláncok ellen.

public class Sample_String{
  public static void main(String[] args){//Convert to LowerCase
String str_Sample = "RockStar";
System.out.println("Convert to LowerCase: " + str_Sample.toLowerCase());
//Convert to UpperCase
System.out.println("Convert to UpperCase: " + str_Sample.toUpperCase());}}

Várható teljesítmény:

Convert to LowerCase: rockstar
Convert to UpperCase: ROCKSTAR

Fontos megjegyzések:

  • A string egy utolsó osztály; azaz létrehozása után az értéket nem lehet megváltoztatni. Így a String objektumokat megváltoztathatatlannak nevezzük.
  • A Java A Virtual Machine (JVM) létrehoz egy memóriahelyet, különösen a megnevezett karakterláncok számára String Constant Pool. Ezért a String inicializálható 'new' kulcsszó nélkül.
  • A vonós osztály alá tartozik java.lang.String hierarchia. De ezt az osztályt nem kell importálni. Java platform automatikusan biztosítja őket.
  • Húr hivatkozás felülírható, de ez nem törli a tartalmat; azaz ha

String h1 = „helló”;

h1 = „helló”+”világ”;

akkor a „hello” karakterlánc nem törlődik. Egyszerűen elveszti a fogantyúját.

  • Több hivatkozás használható ugyanahhoz a karakterlánchoz, de ez lesz ugyanazon a helyen fordulnak elő; azaz ha

String h1 = „helló”;

String h2 = „helló”;

String h3 = „helló”;

akkor a „hello” karakterlánchoz csak egy készlet jön létre a memóriában 3 hivatkozással - h1,h2,h3

  • Ha egy szám idézőjelben van akkor azt húrrá válik, már nem szám. Ez azt jelenti, ha

String S1 ="A szám: "+ "123"+"456";

Rendszer.ki.println(S1);

majd kiírja: A szám: 123456

Ha az inicializálás ilyen:

String S1 = "A szám: "+(123+456);

System.out.println(S1);

akkor kiírja: A szám:579

Stringsnek ennyi!