Què cal saber sobre l'ús de les cadenes a Java

Què cal saber sobre l'ús de les cadenes a Java

Un cop comenceu a aprendre Java, la classe String us cridarà l'atenció gràcies a les seves propietats úniques.





Podeu crear i manipular cadenes a Java més fàcilment que altres llenguatges. Això es deu al fet que la classe String ofereix diverses funcions.





Basant-se en aquestes funcions, hi ha diversos mètodes per generar i editar cadenes en funció de les vostres preferències i necessitats. De la mateixa manera, molt dependrà de la vostra aplicació i d'on cal utilitzar les cadenes.





En què són diferents les cadenes Java?

Si prèviament heu treballat amb llenguatge C, sabreu que les cadenes en C són una matriu de caràcters (personatges). D’altra banda, les cadenes Java són immutables i contenen caràcters Unicode.

necessito codificador de suports Adobe

Una de les funcions clau que fan que les cadenes a Java siguin úniques és la concatenació. Simplement utilitzeu l'operador d'addició + per unir dues o més cadenes. Això no es pot fer amb altres objectes Java, com ara Punt o bé Cercle .



A més, com es va esmentar abans, les cadenes Java són immutables, és a dir, no les podeu modificar. Per exemple, mètodes com toUpperCase () i toLowerCase () generar una cadena completament nova, en lloc de fer canvis al contingut de la cadena existent. Ara el vostre codi retornarà aquesta cadena recentment generada.

Relacionat: Com manipular text en PHP amb aquestes funcions





Una altra àrea on les cadenes són diferents és quan es tracta d’utilitzar caràcters nuls per acabar cadenes en llenguatges com C. A Java, les cadenes són objectes suportats per matrius de caràcters. Si voleu llegir el contingut de la vostra cadena de la manera que els representen les matrius de caràcters, utilitzeu el fitxer toCharArray () mètode farà la feina.

Comparar cadenes a Java també és més convenient que en altres llenguatges de programació. En lloc d’escriure un llarg bloc de codi per comparar cadenes, podeu utilitzar el fitxer és igual() mètode per comparar dues o més cadenes utilitzades en qualsevol programa. Això es deu principalment a que, a Java, el fitxer és igual mètode és anul·lat per la classe String, que fa que la comparació de cadenes sigui un tros de pastís.





En una nota similar, la cerca dins de les cadenes de Java també no té problemes. Mentre s’utilitzen expressions regulars o mètodes com lastIndexOf () i índex de(), podeu cercar segments de cadenes i retornar valors un cop identificada una coincidència. També podeu utilitzar expressions regulars per retallar i dividir diferents cadenes i utilitzar-les individualment per a una àmplia gamma d’usos en qualsevol programa.

Com s’emmagatzemen les cordes a la memòria?

Ara que ja sabeu què fa que les cadenes a Java siguin diferents i beneficioses, explorem la classe String. Si sabeu alguna cosa o dues sobre la gestió de memòria a Java, haureu d’haver tractat les seves dues entitats clau: heap i stack.

La pila s'utilitza per executar processos i operacions després de ser cridada per un programa Java, mentre que l'emmagatzematge dinàmic emmagatzema contingut, necessari per executar i executar codi de manera efectiva. Llavors, com és rellevant la gestió de la memòria en el cas de les cadenes?

Això es deu al fet que la classe String i els literals de cadena de Java reben un tractament diferent. Això indica que als literals de cadena se'ls assigna espai d'emmagatzematge únic a la memòria de l'emmagatzematge dinàmic, conegut com a agrupació constant de cadenes. Per tant, sempre que utilitzeu literals de cadena per crear objectes de cadena a Java, el grup de cadenes constants els emmagatzema.

Al contrari, quan utilitzeu el fitxer nou paraula clau per crear objectes de cadena, Java els tractarà com qualsevol altre objecte i els enviarà al muntatge per emmagatzemar-los.

Exemple de literals de cadena

Ara que ja coneixeu prou els objectes de cadena, anem a veure un exemple de literals de cadena:


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

Aquí, la cadena literal va crear l'objecte String amb el contingut Hello World de MUO. Java enviarà aquest objecte a l'agrupació de constants de cadenes.

Utilització de la nova paraula clau

També podeu utilitzar el fitxer nou paraula clau per generar objectes de cadena.

L'objecte de la cadena himuo amb contingut Hello World de MUO ha estat generat per una cadena literal i s'enviarà a l'agrupació de constants de cadenes. De la mateixa manera, també es poden crear objectes de cadena amb la nova paraula clau de la següent manera:


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

L'exemple anterior utilitza el fitxer nou paraula clau per crear un objecte de cadena. Com s'ha explicat anteriorment, s'envien al muntatge, on s'emmagatzemen amb altres variables i objectes que esperen que el programa els executi.

A hores d’ara, haureu de tenir curiositat per la piscina de constants de cadenes, i amb raó. Assigna espai a la piscina a objectes en funció del contingut de l’objecte de cadena. Després que el grup de constants de cadenes rebi objectes, els comprova per verificar si dos objectes contenen exactament el mateix contingut.

Es poden emmagatzemar el mateix contingut dos objectes de cadena?

Quan s'utilitza una literal de cadena per crear un objecte nou, la màquina virtual de Java (JVM) revisa el contingut de l'objecte i avalua si ja existeix a l'agrupació. Quan un objecte conté contingut que ja està present a l'agrupació, la referència de l'objecte es torna sense crear l'objecte nou. Si heu de crear el nou objecte, heu d'assegurar-vos que el contingut sigui diferent i únic.

Tanmateix, si utilitzeu el fitxer nou paraula clau per crear una cadena nova, es processarà de manera diferent. Quan utilitzeu el fitxer nou per crear una cadena nova, es generarà, independentment de si conté el mateix contingut que la cadena existent.

Això indica que es permet que dos objectes de cadenes existents emmagatzemats a la memòria dinàmica impliquin el mateix contingut; això és diferent dels objectes de cadena emmagatzemats a l'agrupació de constants de cadenes. També podeu demostrar-ho amb l'operador ==; torna cert si es comparen dos objectes amb la mateixa adreça física.


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

Ara podeu entendre les cadenes de Java fàcilment

En aquest article, heu après com les cadenes a Java són diferents, maneres d’utilitzar les cadenes a Java, la gestió de memòria de les cadenes a Java i altres detalls importants sobre el funcionament de les cadenes. Per comprovar la vostra comprensió, per què no escriviu un programa Java per concatenar dues cadenes?

Compartir Compartir Tweet Correu electrònic Aprenent Python? A continuació s’explica com es manipulen les cordes

L’ús i la manipulació de cadenes a Python poden semblar difícils, però és enganyosament senzill.

Llegiu a continuació
Temes relacionats
  • Programació
  • Java
Sobre l'autor Usman Ghani(4 articles publicats)

Usman és un venedor de continguts que ha ajudat diverses empreses amb un creixement orgànic a les plataformes digitals. Li agrada tant programar com escriure, cosa que significa que l’escriptura tècnica li agrada molt. Quan no treballa, a Usman li agrada passar temps mirant programes de televisió, seguint el criquet i llegint sobre l’anàlisi de dades.

Més de Usman Ghani

Subscriu-te al nostre butlletí

Uniu-vos al nostre butlletí per obtenir consells tècnics, ressenyes, llibres electrònics gratuïts i ofertes exclusives.

Feu clic aquí per subscriure-us