Kas jums jāzina par virkņu izmantošanu Java

Kas jums jāzina par virkņu izmantošanu Java

Tiklīdz sāksit apgūt Java, String klase piesaistīs jūsu uzmanību, pateicoties tās unikālajām īpašībām.





Jūs varat izveidot un manipulēt ar virknēm Java vieglāk nekā citās valodās. Tas ir tāpēc, ka String klase piedāvā dažādas funkcijas.





Pamatojoties uz šīm funkcijām, ir vairākas metodes, kā ģenerēt un rediģēt virknes atkarībā no jūsu vēlmēm un vajadzībām. Tāpat daudz kas būs atkarīgs no jūsu lietojumprogrammas un no tā, kur ir jāizmanto virknes.





Kā Java virknes atšķiras?

Ja esat iepriekš strādājis ar C valodu, jūs zināt, ka virknes C ir masīvs rakstzīmes (rakstzīmes). No otras puses, Java virknes ir nemainīgas un satur Unicode rakstzīmes.

kā uzlabot klēpjdatoru spēlēm

Viena no galvenajām iezīmēm, kas padara Java virknes unikālas, ir saķere. Vienkārši izmantojiet pievienošanas operatoru +, lai savienotu divas vai vairākas virknes. To nevar darīt ar citiem Java objektiem, piemēram, Punkts vai Aplis .



Tāpat, kā minēts iepriekš, Java virknes ir nemainīgas, t.i., jūs nevarat tās mainīt. Piemēram, tādas metodes kā līdz lielajiem burtiem () un līdz mazajiem burtiem () ģenerēt pilnīgi jaunu virkni, nevis veikt izmaiņas esošajā virknes saturā. Tagad jūsu kods atgriezīs šo jaunizveidoto virkni.

Saistīts: Kā manipulēt ar tekstu PHP, izmantojot šīs funkcijas





Vēl viena joma, kurā virknes atšķiras, ir runa par nulles rakstzīmju izmantošanu virkņu pārtraukšanai tādās valodās kā C. Java valodā virknes ir objekti, kurus atbalsta rakstzīmju masīvi. Ja vēlaties lasīt virknes saturu tādā veidā, kādā to attēlo rakstzīmju masīvi, izmantojiet toCharArray () metode darīs darbu.

Stīgu salīdzināšana Java ir arī ērtāka nekā citās programmēšanas valodās. Tā vietā, lai rakstītu garu koda bloku virkņu salīdzināšanai, varat izmantot vienāds () metode, lai salīdzinātu divas vai vairākas virknes, ko izmanto jebkurā programmā. Tas galvenokārt ir tāpēc, ka Java valodā vienāds metodi aizstāj String klase, kas padara stīgu salīdzinājumu par kūkas gabalu.





Līdzīgi jāatzīmē, ka Java meklēšana apakšvirknēs ir arī bez problēmām. Lietojot regulārās izteiksmes vai tādas metodes kā lastIndexOf () un indexOf (), jūs varat meklēt virkņu segmentus un atgriezt vērtības, tiklīdz tiek konstatēta atbilstība. Varat arī izmantot regulāras izteiksmes, lai apgrieztu un sadalītu dažādas virknes un izmantotu tās atsevišķi dažādiem lietojumiem jebkurā programmā.

Kā atmiņā tiek saglabātas stīgas?

Tagad, kad jūs zināt, kas padara virknes Java atšķirīgas un izdevīgas, izpētīsim String klasi. Ja jūs zināt vienu vai divas lietas par atmiņas pārvaldību Java, tad jums ir jātiek galā ar divām galvenajām entītijām: kaudzi un kaudzīti.

Kaudze tiek izmantota, lai izpildītu procesus un darbības pēc tam, kad to ir izsaukusi Java programma, savukārt kaudzē tiek glabāts saturs, kas nepieciešams, lai efektīvi palaistu un izpildītu kodu. Tātad, kā atmiņas pārvaldībai ir nozīme virkņu gadījumā?

Tas ir tāpēc, ka String klase un virkņu literāļi Java tiek apstrādāti atšķirīgi. Tas norāda, ka virkņu literāļiem kaudzes atmiņā tiek piešķirta unikāla krātuves vieta, ko dēvē par virkņu nemainīgo kopu. Tāpēc ikreiz, kad izmantojat virkņu literāļus, lai Java izveidotu virkņu objektus, virkņu nemainīgais pūlis tos saglabā.

Gluži pretēji, lietojot jauns atslēgvārdu, lai izveidotu virknes objektus, Java tos apstrādās tāpat kā jebkuru citu objektu un nosūtīs tos uz kaudzi uzglabāšanai.

Stīgu literālu piemērs

Tagad, kad jūs pietiekami daudz zināt par virkņu objektiem, apskatīsim virkņu literāru piemēru:


public class muostrings {
public static void main(String args[])
{
String himuo = 'Hello World from MUO';
System. out .println (himuo);
}
}

Šeit virkņu literāle no MUO izveidoja String objektu ar saturu Hello World. Java nosūtīs šo objektu virkņu nemainīgajam baseinam.

Izmantojot jauno atslēgvārdu

Varat arī izmantot jauns atslēgvārds, lai ģenerētu virknes objektus.

Virknes himuo virknes objekts ar saturu Hello World no MUO ir ģenerēts ar virkņu literālu un tiks nosūtīts uz virkņu nemainīgo kopumu. Līdzīgi virknes objektus var izveidot arī, izmantojot jauno atslēgvārdu šādi:


public class muostringsobj {
public static void main(String args[]) {
char [] strArr = { 'M', 'O', 'U'};
String jStr = new String(strArr);
System. out .println( jStr );
}
}

Iepriekš minētajā piemērā tiek izmantota jauns atslēgvārdu, lai izveidotu virknes objektu. Kā paskaidrots iepriekš, tie tiek nosūtīti uz kaudzi, kur tie tiek glabāti kopā ar citiem mainīgajiem un objektiem, kas gaida programmas izpildi.

Pagaidām jums ir jābūt ziņkārīgam par virkni nemainīgu baseinu, un tas ir pareizi. Tas piešķir baseina telpu objektiem, pamatojoties uz virknes objekta saturu. Pēc tam, kad virkņu nemainīgais baseins saņem objektus, tas tos pārbauda, ​​lai pārbaudītu, vai divi objekti satur tieši tādu pašu saturu.

Vai divi virkņu objekti var uzglabāt vienu un to pašu saturu?

Ja virknes literālis tiek izmantots, lai izveidotu jaunu objektu, Java virtuālā mašīna (JVM) pārskata objekta saturu un novērtē, vai tas jau pastāv pūlā. Ja objektā ir saturs, kas jau atrodas baseinā, objekta atsauce tiek atgriezta, neradot jaunu objektu. Ja jums ir jāizveido jaunais objekts, jums jāpārliecinās, vai saturs ir atšķirīgs un unikāls.

Tomēr, ja izmantojat jauns atslēgvārdu, lai izveidotu jaunu virkni, tas tiks apstrādāts atšķirīgi. Kad izmantojat jauns atslēgvārdu, lai izveidotu jaunu virkni, tas tiks ģenerēts neatkarīgi no tā, vai tajā ir tāds pats saturs kā esošajā virknē.

Tas norāda, ka diviem esošiem virknes objektiem, kas saglabāti kaudzes atmiņā, ir atļauts ietvert vienu un to pašu saturu; tas atšķiras no virkņu objektiem, kas tiek glabāti virkņu konstantu baseinā. To var pierādīt arī ar == operatoru; tā atgriež vērtību true, ja tiek salīdzināti divi objekti ar vienādu fizisko adresi.


public class comparingStrngs {
public static void main(String[] args)
{
String firstLiteral = 'muo1';
String secondLiteral = 'muo1';
System. out .println(firstLiteral == secondLiteral);
String firstKeyword = new String('muo2');
String secondKeyword = new String('muo2');
System. out .println(firstKeyword == secondKeyword);
}
}

Tagad jūs varat viegli saprast Java virknes

Šajā rakstā jūs uzzinājāt, kā virknes Java atšķiras, Java virkņu izmantošanas veidus, virkņu atmiņas pārvaldību Java un citu svarīgu informāciju par virkņu darbību. Lai pārbaudītu savu izpratni, kāpēc neuzrakstīt Java programmu divu virkņu savienošanai?

Kopīgot Kopīgot Čivināt E -pasts Mācīties Python? Lūk, kā manipulēt ar virknēm

Stīgu izmantošana un manipulēšana Python var šķist sarežģīta, taču maldinoši vienkārša.

Lasīt Tālāk
Saistītās tēmas
  • Programmēšana
  • Java
Par autoru Usman Ghani(4 raksti publicēti)

Usmans ir satura tirgotājs, kurš ir palīdzējis vairākiem uzņēmumiem ar organisku izaugsmi digitālajās platformās. Viņam patīk gan programmēšana, gan rakstīšana, kas nozīmē, ka tehniskā rakstīšana viņam ļoti patīk. Kad nestrādā, Usmanam patīk pavadīt laiku, skatoties TV pārraides, sekot kriketam un lasīt par datu analīzi.

Vairāk no Usman Ghani

Abonējiet mūsu biļetenu

Pievienojieties mūsu informatīvajam izdevumam, lai iegūtu tehniskus padomus, pārskatus, bezmaksas e -grāmatas un ekskluzīvus piedāvājumus!

Noklikšķiniet šeit, lai abonētu