Hvordan du kan snu en streng i java

Hvordan du kan snu en streng i java
Å snu en streng betyr å ha strengen i omvendt rekkefølge. For eksempel kan strengen "ABCDE" omvendes til "EDCBA", og "Pool" kan reverseres til "Loop". Som et annet eksempel kan strengen “ABC Def Ghi” omvendes til “IHG Fed CBA”.

Strengen bokstavelig av et objekt for strengklassen er konstant. Dette betyr at ikke av karakterene sine kan endres eller fortrenges. Heldigvis har Java to andre strenglignende klasser, kalt StringBuffer og StringBuilder. Hver av disse to klassene har omvendt () metode for å snu en streng.

Så for å snu en streng, konverter du strengobjektet til et strengbuffer eller StringBuilder -objekt. Bruk den motsatte () metoden for en av disse klassene for å snu strengen. Konverter deretter resultatet tilbake til et strengobjekt.

For å konvertere et strengobjekt til et StringBuffer -objekt, bruk strengobjektet i StringBuffer -konstruktøren. For å konvertere et StringBuffer -objekt tilbake til et strengobjekt, bruk StringBuffer -objektet i strengkonstruktøren.

For å konvertere et strengobjekt til et StringBuilder -objekt, bruk strengobjektet i StringBuilder -konstruktøren. For å konvertere et StringBuilder -objekt tilbake til et strengobjekt, bruk StringBuilder -objektet i strengkonstruktøren.

Streng og strengbufferkonstruksjoner

Streng til StringBuffer

Syntaksen for å konstruere et StringBuffer -objekt fra et strengobjekt er:

StringBuffer SB = new StringBuffer (String Str);

der SB er StringBuffer -objektet. Følgende program illustrerer dette:

public class theclass
public static void main (String [] args)
String str = "høyere nivå";
StringBuffer SB = new StringBuffer (STR);
System.ute.println (SB);

Utgangen er:

Høyere nivå

Merk at programmet ikke måtte importere StringBuffer -klassen.

StringBuffer til streng

Syntaksen for å konstruere et strengobjekt fra et StringBuffer -objekt er:

String str = new String (StringBuffer SB);

Hvor STR er strengobjektet. Følgende program illustrerer dette:

public class theclass
public static void main (String [] args)
StringBuffer SB = new StringBuffer ("Høyere nivå");
String str = new String (SB);
System.ute.println (str);

Utgangen er:

Høyere nivå

Streng og strengbuilderkonstruksjoner

Streng til StringBuilder

Syntaksen for å konstruere et StringBuilder -objekt fra et strengobjekt er:

StringBuilder sbl = new StringBuilder (String Str);

der SBL er StringBuilder -objektet. Følgende program illustrerer dette:

public class theclass
public static void main (String [] args)
String str = "høyere nivå";
StringBuilder sbl = new StringBuilder (STR);
System.ute.println (sbl);

Utgangen er:

Høyere nivå

Merk at programmet ikke måtte importere StringBuilder -klassen.

StringBuilder til String

Syntaksen for å konstruere et strengobjekt fra et StringBuilder -objekt er:

String str = new String (StringBuilder SBL);

Hvor STR er strengobjektet. Følgende program illustrerer dette:

public class theclass
public static void main (String [] args)
StringBuilder sbl = new StringBuilder ("Høyere nivå");
String str = new String (SBL);
System.ute.println (str);

Utgangen er:

Høyere nivå

Reversing med StringBuffer

Prosedyren for å reversere en streng med StringBuffer er som følger:

StringBuffer SB = New StringBuffer (String Str)
StringBuffersBr = SB.omvendt()
String strr = ny streng (StringBuffersBr);

Følgende program illustrerer dette:

public class theclass
public static void main (String [] args)
String str = "høyere nivå";
StringBuffer SB = new StringBuffer (STR);
StringBuffersBr = SB.omvendt();
Streng strr = ny streng (SBR);
System.ute.println (strr);

Utgangen er:

Nivå Rehgih

Reversing med StringBuilder

Prosedyren for å reversere en streng med StringBuilder er som følger:

StringBuilder sbl = new StringBuilder (String Str)
StringBuilder sblr = sbl.omvendt()
String strr = ny streng (StringBuilder SBLR);

Følgende program illustrerer dette:

public class theclass
public static void main (String [] args)
String str = "høyere nivå";
StringBuilder sbl = new StringBuilder (STR);
StringBuilder sblr = sbl.omvendt();
Streng strr = ny streng (SBLR);
System.ute.println (strr);

Utgangen er:

Nivå Rehgih

StringBuffer og StringBuilder

StringBuilder er en forenklet form for StringBuffer. Hvis StringBuffer brukes med flere tråder, vil det være god synkronisering. StringBuilder tilbyr ikke god synkronisering med flere tråder. StringBuilder skal bare brukes med entrådprogrammer.

Hovedmetodene for StringBuilder og StringBuffer er metodene vedlegg () og innsat (). Med disse metodene kan strenglitteralene deres økes i lengde og modifiseres også. Disse objektene kan ikke ha nullverdien som en av karakterene sine.

Reversering med streng og matrise

Strengverdien (tegn som danner strengen bokstavelig) for strengobjektet er konstant. Karakterene kan selvfølgelig leses. Karakterens sekvens er skrivebeskyttet. Hvis tegnene leses bakover i en matrise og matrisen konvertert til et strengobjekt i strengklassen, ville det være strengens reversering.

Ved hjelp av denne prosedyren må størrelsen på strengen bestemmes med følgende uttalelse:

len = str.lengde();

hvor lengde () er strengklassemetoden for å returnere lengden på strengen. For å lage en matrise-av-chars fra en streng, bruk følgende strengkonstruksjon:

String strr = ny streng (char [])

Følgende program bruker denne prosedyren for å snu en streng i Java:

public class theclass
public static void main (String [] args)
String str = "høyere nivå";
int len ​​= str.lengde();
char [] arr = new char [len];
for (int i = len; i> 0; i--)
arr [len-i] = str.Charat (i-1);
String strr = ny streng (arr);
System.ute.println (strr);

Utgangen er:

Nivå Rehgih

samme som før. Legg merke til bruken av Charat () -metoden for å oppnå tegnet ved en indeks for strengobjektet.

Konklusjon

Strengen bokstavelig av et objekt for strengklassen er konstant. Dette betyr at ikke av karakterene sine kan endres eller fortrenges. Heldigvis har Java to andre strenglignende klasser, kalt StringBuffer og StringBuilder. Hver av disse to klassene har omvendt () metode for å snu en streng.

Så for å snu en streng, konverter du strengobjektet til et strengbuffer eller StringBuilder -objekt. Bruk den motsatte () metoden for en av disse klassene for å snu strengen. Konverter deretter resultatet tilbake til et strengobjekt.

For å konvertere et strengobjekt til et StringBuffer -objekt, bruk strengobjektet i StringBuffer -konstruktøren. For å konvertere et StringBuffer -objekt tilbake til et strengobjekt, bruk StringBuffer -objektet i strengkonstruktøren.

For å konvertere et strengobjekt til et StringBuilder -objekt, bruk strengobjektet i StringBuilder -konstruktøren. For å konvertere et StringBuilder -objekt tilbake til et strengobjekt, bruk StringBuilder -objektet i strengkonstruktøren.