logo

Java karakterlánc

Ban ben Jáva , a string alapvetően egy objektum, amely char értékek sorozatát reprezentálja. An sor A karakterek száma ugyanúgy működik, mint a Java karakterlánc. Például:

 char[] ch={'j','a','v','a','t','p','o','i','n','t'}; String s=new String(ch); 

ugyanaz, mint:

 String s='javatpoint'; 

Java karakterlánc osztály számos módszert kínál a karakterláncokon végzett műveletek végrehajtására, mint például az összehasonlítás(), a concat(), az equals(), a split(), a long(), a csere(), az összehasonlítás(), az intern(), a substring() stb.

A java.lang.String osztály valósítja meg Sorozatozható , Hasonló és CharSequence interfészek .

String Java nyelven

CharSequence interfész

A CharSequence interfész a karaktersorozat ábrázolására szolgál. Húr, StringBuffer és StringBuilder osztályok valósítják meg. Ez azt jelenti, hogy e három osztály használatával sztringeket hozhatunk létre Java nyelven.

CharSequence Java nyelven

A Java karakterlánc megváltoztathatatlan, ami azt jelenti, hogy nem módosítható. Amikor bármilyen karakterláncot módosítunk, egy új példány jön létre. A módosítható karakterláncokhoz használhatja a StringBuffer és a StringBuilder osztályokat.

A megváltoztathatatlan húrról később lesz szó. Először is értsük meg, mi a String a Java-ban, és hogyan kell létrehozni a String objektumot.

Mi a String a Java-ban?

Általában a String egy karaktersorozat. De a Java-ban a string egy olyan objektum, amely karaktersorozatot képvisel. A java.lang.String osztály egy karakterlánc objektum létrehozására szolgál.

Hogyan készítsünk string objektumot?

A String objektum létrehozásának két módja van:

  1. String literál szerint
  2. Új kulcsszó szerint

1) String Literal

A Java String literál kettős idézőjelek használatával jön létre. Például:

 String s='welcome'; 

Minden alkalommal, amikor létrehoz egy karakterlánc-literált, a JVM először a „sztringkonstans készletet” ellenőrzi. Ha a karakterlánc már létezik a készletben, akkor a rendszer egy hivatkozást ad vissza az összevont példányra. Ha a karakterlánc nem létezik a készletben, akkor a rendszer egy új karakterlánc-példányt hoz létre, és elhelyezi a készletben. Például:

 String s1='Welcome'; String s2='Welcome';//It doesn't create a new instance 

Java karakterlánc

A fenti példában csak egy objektum jön létre. Először is, a JVM nem talál 'Welcome' értékű karakterlánc-objektumot a string konstans készletben, ezért új objektumot hoz létre. Ezt követően megtalálja a „Welcome” értékű karakterláncot a készletben, nem hoz létre új objektumot, hanem ugyanarra a példányra adja vissza a hivatkozást.

Megjegyzés: A karakterlánc-objektumok egy speciális memóriaterületen, úgynevezett „sztringkonstans készletben” vannak tárolva.

Miért használja a Java a String literal fogalmát?

A Java memóriahatékonyabbá tétele (mivel nem jön létre új objektum, ha már létezik a karakterlánc-konstans készletben).

2) Új kulcsszó alapján

 String s=new String('Welcome');//creates two objects and one reference variable 

Ilyen esetben, JVM egy új karakterlánc objektumot hoz létre a normál (nem pool) kupacmemóriában, és a literális 'Üdvözöljük' a string konstans készletbe kerül. Az s változó a kupacban lévő objektumra fog hivatkozni (nem pool).

apache

Java karakterlánc példa

StringExample.java

 public class StringExample{ public static void main(String args[]){ String s1='java';//creating string by Java string literal char ch[]={'s','t','r','i','n','g','s'}; String s2=new String(ch);//converting char array to string String s3=new String('example');//creating Java string by new keyword System.out.println(s1); System.out.println(s2); System.out.println(s3); }} 
Tesztelje most

Kimenet:

java strings example 

A fenti kód átalakítja a char tömbbe a Húr tárgy. És megjeleníti a String objektumokat s1, s2 , és s3 konzolon használva println() módszer.

Java String osztály metódusai

A java.lang.String osztály számos hasznos módszert kínál a char értékek sorozatán végzett műveletek végrehajtására.

Nem.MódszerLeírás
1 char charAt(int index) char értéket ad vissza az adott indexhez
2 int hosszúság () Visszaadja a karakterlánc hosszát
3 statikus karakterlánc formátum (karakterlánc formátum, objektum... args) Formázott karakterláncot ad vissza.
4 statikus karakterlánc formátum (Lakális nyelv, Karakterlánc formátum, Objektum... args) Formázott karakterláncot ad vissza adott nyelvi beállítással.
5 Karakterlánc részkarakterlánc (int beginIndex) Az adott kezdőindex részkarakterláncát adja vissza.
6 Karakterlánc részkarakterlánc (int beginIndex, in endindex) Az adott kezdőindex és záróindex részkarakterláncát adja vissza.
7 logikai érték tartalmazza (CharSequence s) Igaz vagy hamis értéket ad vissza, miután megfelelt a char érték sorozatának.
8 statikus karakterlánc-csatlakozás (CharSequence határoló, CharSequence... elemek) Összekapcsolt karakterláncot ad vissza.
9 statikus karakterlánc-illesztés (CharSequence határoló, Iterálható elemek) Összekapcsolt karakterláncot ad vissza.
10 logikai egyenlő (objektum egy másik) Ellenőrzi a karakterlánc és az adott objektum egyenlőségét.
tizenegy logikai érték üres() Ellenőrzi, hogy üres-e a karakterlánc.
12 String concat (String str) Összefűzi a megadott karakterláncot.
13 Karakterlánccsere (régi karakter, új karakter) Lecseréli a megadott char érték minden előfordulását.
14 Karakterlánc csere (CharSequence régi, CharSequence új) Lecseréli a megadott CharSequence összes előfordulását.
tizenöt statikus karakterlánc egyenlő:IgnoreCase(másik karakterlánc) Egy másik karakterláncot hasonlít össze. Nem ellenőrzi az esetet.
16 Karakterlánc[] felosztása (karakterlánc regex) Egy felosztott karakterláncot ad vissza, amely megfelel a reguláris kifejezésnek.
17 Karakterlánc[] felosztása (karakterlánc regex, int limit) Egy felosztott karakterláncot ad vissza, amely megfelel a regexnek és a határértéknek.
18 String gyakornok() Beépített karakterláncot ad vissza.
19 int indexOf(int ch) A megadott karakterérték indexet adja vissza.
húsz int indexOf(int ch, int fromIndex) A megadott karakterérték indexet adja vissza, az adott indextől kezdve.
huszonegy int indexOf(karakterlánc részkarakterlánc) A megadott részstring indexet adja vissza.
22 int indexOf(String részkarakterlánc, int fromIndex) A megadott részkarakterlánc-indexet adja vissza az adott indextől kezdve.
23 Kisbetűs karakterlánc() Kisbetűs karakterláncot ad vissza.
24 Karakterlánc kisbetűre (l-es nyelv) Kisbetűs karakterláncot ad vissza a megadott területi beállítás használatával.
25 Karakterlánc nagybetűre() Nagybetűs karakterláncot ad vissza.
26 Karakterlánc nagybetűre (l-es nyelv) Egy karakterláncot ad vissza nagybetűvel a megadott területi beállítás használatával.
27 String trim() Eltávolítja a karakterlánc kezdő és záró szóközeit.
28 statikus karakterlánc valueOf(int érték) A megadott típust karakterláncokká alakítja. Ez egy túlterhelt módszer.

Tudod?
  • Miért változtathatatlanok a String objektumok?
  • Hogyan lehet megváltoztathatatlan osztályt létrehozni?
  • Mi az a string konstans pool?
  • Milyen kódot ír a fordító, ha bármilyen karakterláncot a + jellel fűz össze (string konkatenációs operátor)?
  • Mi a különbség a StringBuffer és a StringBuilder osztály között?

Mit fogunk tanulni a húrkezelésből?
  • A karakterlánc fogalma
  • Megváltozhatatlan húr
  • String összehasonlítás
  • Karakterlánc összefűzése
  • A részstring fogalma
  • String osztály metódusai és használata
  • StringBuffer osztály
  • StringBuilder osztály
  • Változatlan osztály létrehozása
  • toString() metódus
  • StringTokenizer osztály