Mikä on String.intern() Javassa?

Mika On String Intern Javassa



Javassa ' harjoittelija() ” -menetelmää käytetään varmistamaan, että jos suuri määrä merkkijonoa tallentaa tietoja, merkkijonoilla, joilla on sama elementti, on sama muisti. Tämä menetelmä on erittäin hyödyllinen ohjelman muistitilan vähentämiseen. Jos sinulla on esimerkiksi valtava luettelo työntekijöiden nimistä, jossa nimi ' Jack ” näkyy kymmenen kertaa. ' harjoittelija() ' -menetelmä varmistaa, että ' Jack ” vie vain yhden tilan muistissa.

Tämä viesti käsittelee String.intern()-menetelmän käyttöä Javassa.







Mikä on String.intern() Javassa?

' harjoittelija() ” -menetelmää käytetään Javassa viittauksen palauttamiseen ilmoitettuun merkkijonoobjektiin. Jos merkkijonoobjekti kuitenkin oli olemassa samalla sisällöllä/tiedoilla merkkijonovarannossa, se palauttaa edellisen merkkijonon viittauksen. Lisäksi, jos merkkijonoa ei ole merkkijonovarannossa, se lisää uuden merkkijonon ja sen viittauksen merkkijonopankkiin.



Syntaksi

Voit käyttää ilmoitettua menetelmää noudattamalla alla olevaa syntaksia:



merkkijono . harjoittelija ( )

Tässä esimerkissä keskustelemme siitä, miksi on tarpeen käyttää ' harjoittelija() ' -menetelmä Javassa, kun merkkijono luodaan kasaan käyttämällä ' merkkijono() ”rakentaja. Ensin luodaan merkkijonoobjekti käyttämällä ' merkkijono() ”rakentaja. Tämän jälkeen merkkijonon tiedot välitetään parametrina tälle objektille ja tallennetaan muuttujaan:





merkkijono a = Uusi merkkijono ( 'Tervetuloa Linuxhintiin.' ) ;

Toinen merkkijonoobjekti luodaan noudattamalla samaa menettelyä:

merkkijono b = Uusi merkkijono ( 'Tervetuloa Linuxhintiin' ) ;

Kutsu ' println()' -menetelmä ja aseta 'a=b ' argumenttina tälle menetelmälle. Se palauttaa tuloksen epätosi, koska jokaisella merkkijonolla on oma tila muistissa:



Järjestelmä . ulos . println ( a == b ) ;

Voidaan huomata, että yllä olevan esimerkin tulos palauttaa false:

Esimerkki 1: String.intern() -menetelmä merkkijonoobjektien tarkistamiseen

Tässä esimerkissä kaksi merkkijonoobjektia luodaan käyttämällä ' merkkijono() ” konstruktori ja merkkijono välitetään konstruktorille argumenttina. Kutsu seuraavaksi ' harjoittelija() ' -menetelmä jokaiselle merkkijonolle ja tallenna ensimmäinen merkkijono muuttujaan ' a ' ja toinen ' b ”. Tarkista kunto' a=b ' ja käytä ' println() ' näyttääksesi tuloksen:

merkkijono a = Uusi merkkijono ( 'Tervetuloa Linuxhintiin' ) . harjoittelija ( ) ;
merkkijono b = Uusi merkkijono ( 'Tervetuloa Linuxhintiin' ) . harjoittelija ( ) ;
Järjestelmä . ulos . println ( a == b ) ;

Tämän seurauksena se palauttaa ' totta 'arvoa, koska ' harjoittelija() ” -menetelmä varmistaa, että jokainen merkkijono varaa tilaa samassa muistissa merkkijonotietojen tallentamiseksi:

Esimerkki 2: String.intern() -menetelmä merkkijonon ja merkkijonoobjektin tarkistamiseksi

Tässä esitetyssä esimerkissä luodaan erilaisia ​​merkkijonoja ja tallennetaan eri muuttujiin. Tätä tarkoitusta varten muuttuja alustetaan ensin merkkijonoarvolla ' Linux ”:

merkkijono a = 'Linux' ;

Käytä ' harjoittelija() ' -menetelmää käyttämällä merkkijonoa ' a ' ja tallenna se muuttujaan ' b ':

merkkijono b = a. harjoittelija ( ) ;

Uusi merkkijonotyyppinen objekti luodaan '' merkkijono() ' rakentaja ja läpäisee ' Linux ' tämän konstruktorin parametrina. Tallenna se sitten muuttujaan ' c ':

merkkijono c = Uusi merkkijono ( 'Linux' ) ;

Kutsu ' harjoittelija() ' -menetelmää käyttämällä muuttujaa ' c ' ja tallenna tulos ' d ”:

merkkijono d = c. harjoittelija ( ) ;

Vertaa nyt näitä luotuja merkkijonoja keskenään. Käytä tätä tarkoitusta varten ' println() ' -menetelmää ja välitä parametri alla olevan koodinpätkän mukaisesti:

Järjestelmä . ulos . println ( a == b ) ;
Järjestelmä . ulos . println ( a == c ) ;
Järjestelmä . ulos . println ( a == d ) ;
Järjestelmä . ulos . println ( b == c ) ;
Järjestelmä . ulos . println ( b == d ) ; Järjestelmä . ulos . println ( c == d ) ;

Jokaisen vastaavan lausunnon tulos tulostetaan konsoliin. Olemme kartoittaneet tulosteen jokaisella lauseella:

Siinä kaikki Javan string.intern()-menetelmästä.

Johtopäätös

' String.intern() ” -menetelmä Javassa palauttaa viittauksen ilmoitettuun merkkijonoobjektiin. Jos merkkijonoobjekti kuitenkin oli olemassa samalla sisällöllä/tiedoilla merkkijonovarannossa, se palauttaa edellisen merkkijonon viittauksen. Tämä viesti on kertonut useita String.intern()-menetelmän käyttötapauksia Javassa.