Kaj morate vedeti o uporabi nizov v Javi

Kaj morate vedeti o uporabi nizov v Javi

Ko se začnete učiti Jave, bo razred String zaradi svojih edinstvenih lastnosti pritegnil vašo pozornost.





Nize v Javi lahko ustvarite in upravljate lažje kot v drugih jezikih. To je zato, ker razred String ponuja različne funkcije.





Na podlagi teh funkcij obstaja več načinov za ustvarjanje in urejanje nizov glede na vaše želje in potrebe. Podobno bo veliko odvisno od vaše aplikacije in od tega, kje je treba uporabiti nize.





Kako se nizovi Java razlikujejo?

Če ste že delali z jezikom C, veste, da so nizi v jeziku C znaki (znaki). Po drugi strani so nizi Java nespremenljivi in ​​vsebujejo znake Unicode.

kako nadgraditi prenosni računalnik za igre

Ena ključnih značilnosti, zaradi katerih so nizi v Javi edinstveni, je združevanje. Za združevanje dveh ali več nizov uporabite samo operator za dodajanje +. To je nekaj, česar ne morete storiti z drugimi predmeti Java, na primer Točka ali Krog .



Kot že omenjeno, so nizi Java nespremenljivi, kar pomeni, da jih ne morete spreminjati. Na primer, metode, kot so toUpperCase () in toLowerCase () ustvarite popolnoma nov niz, namesto da bi spreminjali obstoječo vsebino niza. Zdaj bo vaša koda vrnila ta na novo ustvarjeni niz.

Povezano: Kako s temi funkcijami manipulirati z besedilom v PHP





Drugo področje, kjer so nizi različni, je, ko gre za uporabo ničelnih znakov za prekinitev nizov v jezikih, kot je C. V Javi so nizi predmeti, ki jih podpirajo nizi znakov. Če želite prebrati vsebino niza na način, kot ga predstavljajo nizi znakov, uporabite datoteko toCharArray () metoda bo opravila svoje delo.

Primerjava nizov v Javi je tudi bolj priročna kot v drugih programskih jezikih. Namesto pisanja dolgega bloka kode za primerjavo nizov lahko uporabite enako () metoda za primerjavo dveh ali več nizov, ki se uporabljajo v katerem koli programu. To je predvsem zato, ker je v Javi enako metodo preglasi razred String, zaradi česar je primerjava nizov kos.





Podobno je tudi iskanje po podnizih v Javi brez težav. Med uporabo regularnih izrazov ali podobne metode lastIndexOf () in indeks(), lahko poiščete segmente nizov in vrnete vrednosti, ko je identificirano ujemanje. Redne izraze lahko uporabite tudi za obrezovanje in razdelitev različnih nizov ter jih uporabite posamično za široko uporabo v katerem koli programu.

Kako so nizi shranjeni v spominu?

Zdaj, ko veste, zakaj so nizi v Javi drugačni in koristni, raziščimo razred String. Če veste nekaj o upravljanju pomnilnika v Javi, ste se morali ukvarjati z dvema ključnima entitetama: kupom in skladom.

Sklad se uporablja za izvajanje procesov in operacij, potem ko ga pokliče program Java, medtem ko kup shranjuje vsebino - potrebno za učinkovito izvajanje in izvajanje kode. Torej, kako je upravljanje pomnilnika pomembno v primeru nizov?

To je zato, ker razred String in literal literal v Javi prejemajo drugačno obravnavo. To kaže, da so literalnim nizom dodeljeni edinstven prostor za shranjevanje v pomnilniku kupe, imenovan String Constant Pool. Zato jih kadar koli uporabljate nizovne literale za ustvarjanje nizovnih predmetov, jih shranjuje String Constant Pool.

Nasprotno, ko uporabljate nov ključno besedo za ustvarjanje nizov, jih bo Java obravnavala tako kot vse druge objekte in jih poslala v kup za shranjevanje.

Primer literalnih nizov

Zdaj, ko veste dovolj o nizah, pojdimo skozi primer nizov:


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

Tu je literal niza ustvaril objekt String z vsebino Hello World iz MUO. Java bo ta predmet poslala v zbirko konstantnih nizov.

Uporaba nove ključne besede

Uporabite lahko tudi nov ključno besedo za ustvarjanje objektov String.

Objekt niza himuo z vsebino Hello World iz MUO je ustvaril literal niza in bo poslan v zbirko nizov konstante. Podobno je mogoče z novo ključno besedo ustvariti tudi nizne predmete:


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

Zgornji primer uporablja datoteko nov ključno besedo za ustvarjanje predmeta niza. Kot je bilo že pojasnjeno, se pošljejo v kup, kjer se shranijo z drugimi spremenljivkami in predmeti, ki čakajo, da jih program izvede.

Doslej vas mora zanimati String Constant Pool in to je prav. Prostoru bazena dodeljuje predmete na podlagi vsebine predmeta niza. Ko zbirka nizov konstante prejme predmete, jih preveri, ali preverjata, ali dva predmeta vsebujeta popolnoma enako vsebino.

Ali lahko dva nizna predmeta shranita isto vsebino?

Ko se za ustvarjanje novega predmeta uporabi literalni niz, Java Virtual Machine (JVM) pregleda vsebino predmeta in oceni, ali že obstaja v področju. Ko predmet vsebuje vsebino, ki je že prisotna v področju, se sklic predmeta vrne brez ustvarjanja novega predmeta. Če morate ustvariti nov predmet, se morate prepričati, da je vsebina ločena in edinstvena.

Če pa uporabljate nov Za ustvarjanje novega niza bo obdelana drugače. Ko uporabljate nov Če želite ustvariti nov niz, bo ustvarjen ne glede na to, ali vsebuje isto vsebino kot obstoječi niz.

To kaže, da lahko dva obstoječa niza, shranjena v pomnilniku kupov, vsebujeta isto vsebino; to se razlikuje od nizov, shranjenih v zbirki String Constant Pool. To lahko dokažete tudi z operatorjem ==; vrne true, če primerjamo dva predmeta z enakim fizičnim naslovom.


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);
}
}

Zdaj lahko preprosto razumete nizove v Javi

V tem članku ste izvedeli, kako so nizi v Javi različni, načini uporabe nizov v Javi, upravljanje pomnilnika nizov v Javi in ​​druge pomembne podrobnosti o delovanju nizov. Če želite preveriti svoje razumevanje, zakaj ne bi napisali programa Java, ki bi združil dva niza?

Deliti Deliti Cvrkutati E-naslov Se učite Pythona? Tukaj je opisano, kako manipulirati z nizi

Uporaba in upravljanje nizov v Pythonu se lahko zdi težko, vendar je zavajajoče preprosto.

Preberite Naprej
Sorodne teme
  • Programiranje
  • Java
O avtorju Usman Ghani(4 objavljeni članki)

Usman je tržnik vsebin, ki je pomagal več podjetjem pri organski rasti na digitalnih platformah. Rad ima tako programiranje kot pisanje, kar pomeni, da je tehnično pisanje nekaj, v čemer zelo uživa. Kadar ne dela, Usman uživa v gledanju televizijskih oddaj, spremljanju kriketa in branju o analitiki podatkov.

Več od Usmana Ghanija

Naročite se na naše novice

Pridružite se našemu glasilu za tehnične nasvete, ocene, brezplačne e -knjige in ekskluzivne ponudbe!

Kliknite tukaj, če se želite naročiti