java reverse string tutorial with programming examples
I denne vejledning lærer vi at vende en streng i Java ved hjælp af Reverse () -metoden i StringBuilder- og StringBuffer-klasser ved hjælp af eksempler:
Her vil vi diskutere den omvendte () streng Java-metode, og dens anvendelse sammen med tilstrækkelige programmeringseksempler, ofte stillede spørgsmål og scenariebaserede spørgsmål, der giver dig en idé om de relevante områder af denne metode.
Når du gennemgår denne tutorial, vil du være i stand til at forstå den omvendte () String Java-metode bedre og kan anvende metoden i forskellige String-håndteringsprogrammer alene.
=> Besøg her for at lære Java fra bunden.
Hvad du lærer:
Java omvendt streng
Før vi starter, skal vi forstå, at klassen Java String er uforanderlig, og at den ikke har den omvendte () metode. StringBuilder- og StringBuffer-klasser har dog den indbyggede Java reverse () -metode.
Som navnet antyder, bruges omvendt () -metoden til at vende rækkefølgen af forekomster af alle tegn i en streng.
Syntaks:
StringBuffer reverse()
StringBuffer omvendt streng
I dette eksempel , vi har initialiseret en strengvariabel og gemt alle tegnene i denne streng i StringBuffer. Derefter har vi brugt reverse () -metoden til at vende forekomsten af strengens tegn.
public class Reverse { public static void main(String() args) { // Initialized a String variable String str = 'gnitseT erawtfoS'; // Created a StringBuffer 'sb' and stored all the characters of the String StringBuffer sb = new StringBuffer(str); // Reversed the occurrence of characters sb.reverse(); // Printed the StringBuffer System.out.println(sb); } }
Produktion:
StringBuilder omvendt streng
I dette eksempel vi prøver at vende forekomsten af tegnene gennem StringBuilder Class. Vi udfører den omvendte () metode på de samme inputværdier, som vi brugte under StringBuffer.
public class Reverse { public static void main(String() args) { // Initialized a String variable String str = 'gnitseT erawtfoS'; // Created a StringBuilder 'stbuilder' and stored all the characters of the String StringBuilder stbuilder = new StringBuilder(str); // Reversed the occurrence of characters stbuilder.reverse(); // Printed the StringBuilder System.out.println(stbuilder); } }
Produktion:
Scenarier
Scenarie 1: Vend en streng uden at bruge metoden StringBuilder eller StringBuffer ().
Forklaring: I dette scenarie viser vi dig, hvordan du vender tegnene i en streng uden at bruge metoden reverse ().
Vi har taget en inputstreng og derefter konverteret den til karakter Array. Ved hjælp af for loop har vi udskrevet tegnene i omvendt rækkefølge.
hvad er den bedste virtual reality-app
public class Reverse { public static void main(String() args) { // Initialized a String variable String str = 'SAKET'; /* * converted String into character Array * and printed all the elements in * reverse order using for loop */ char chars() = str.toCharArray(); for (int i = chars.length - 1; i >= 0; i--) { System.out.print(chars(i)); } } }
Produktion:
Scenarie 2: Vend alle tegnene ved hjælp af metoden Split ().
Forklaring: Dette er en anden måde at vende forekomsten af tegnene i en streng på. I dette scenarie bruger vi Split () -metoden til at opdele hvert tegn i en streng og ved hjælp af for loop vil vi udskrive hvert tegn i omvendt rækkefølge af forekomst.
Her har vi taget input gennem konsollen ved hjælp af scannerklassen.
import java.util.Scanner; public class Reverse { public static void main(String() args) { String str; // Taking input through the console using Scanner Class Scanner in = new Scanner(System.in); System.out.println('Enter your String'); str = in.nextLine(); /* * Splitted each character of the String and then * printed the same in the reverse order using * for loop */ String() split = str.split(''); for(int i=split.length-1; i>=0; i--) { System.out.print(split(i) + ''); } } }
Produktion:
Scenarie 3: Vend alle tegnene ved at bruge swapping.
Forklaring: Dette er endnu en måde at vende tegnene på en streng på. Her har vi initialiseret 'i' og længde = 0.
Inde i for-sløjfen har vi analyseret tegnene fra begge sider ved at holde 'i' lig med nul, forøges med 1 og længdedekrementering med 1 for hver sammenligning mellem det oprindelige indeks og det sidste indeks. Vi har fortsat denne tilstand, indtil 'i' bliver 'lig med' eller 'større end' længden.
Endelig har vi ved hjælp af forEach-sløjfen udskrevet hvert tegn.
class Reverse { public static void main(String() args) { // Initialized an input String String str = 'PLEHGNITSETERAWTFOS SI SIHT'; // Converted the String into character Array char() arr = str.toCharArray(); int i, length = 0; length = arr.length - 1; for (i = 0; i Produktion:

Ofte stillede spørgsmål
Q # 1) Er der en omvendt () strengmetode i Java?
Svar: Nej. String-klassen har ikke en omvendt () metode. Du kan dog vende en streng på flere måder i selve strengklassen. StringBuilder, StringBuffer og Collections understøtter også reverse () -metoden.
Q # 2) Hvordan kan vi konvertere en StringBuilder til String?
Svar: Nedenfor er det program, hvor vi har konverteret de elementer, der er gemt i en StringBuilder til en streng.
public class Reverse { public static void main(String args()) { String strArr() = { 'This', 'is', 'an', 'Example', 'of', 'String' }; // Created a new StringBuilder StringBuilder sb = new StringBuilder(); /* * Appended all the elements of str (delimited by space) into StringBuilder */ sb.append(strArr(0)); sb.append(' ' + strArr(1)); sb.append(' ' + strArr(2)); sb.append(' ' + strArr(3)); sb.append(' ' + strArr(4)); sb.append(' ' + strArr(5)); // Converted the StringBuilder into it's String Equivalent String str = sb.toString(); System.out.println(str); } }
Produktion:

Q # 3) Liste over forskellen mellem String, StringBuilder og StringBuffer?
initialisering af c ++ statisk variabel
Svar: Nedenfor er forskellen mellem String, StringBuilder og StringBuffer.
Snor StringBuffer StringBuilder En streng er en uforanderlig klasse. StringBuffer er en mutabel klasse, der er synkroniseret (trådsikker). StringBuilder er også en mutable klasse, som ikke er synkroniseret. En streng er mindre effektiv end StringBuffer og StringBuilder, fordi hver gang vi udfører strengmanipulation, opretter den en ny streng og kaster den gamle streng til affaldssamling. StringBuffer er mindre effektiv. StringBuilder er mere effektiv end StringBuffer. En streng er langsommere end StringBuffer, når vi sammenkæder flere strenge, da den opretter en ny forekomst hver gang. StringBuffer er langsommere end StringBuilder. StringBuilder er hurtig, fordi den ikke er synkroniseret.
Q # 4) Hvordan konverterer jeg en char til en streng i Java?
Svar: Vi kan konvertere et tegn til en streng ved hjælp af en indbygget metode 'toString ()'.
Foreslået læsning => Sådan konverteres Char til streng i Java
Nedenfor er det program, hvor vi har brugt toString () -metoden til at konvertere en char til en streng.
public class Reverse { public static void main(String args()) { char chars = 'A'; /* * With the help of toString() method, we have * converted a Character into its String Equivalent */ String str = Character.toString(chars); System.out.println(str); } }
Produktion:

Q # 5) Skriv et Java-program for at kontrollere, om strengen er en palindrom eller ej (Brug StringBuffer).
Svar: Vi kan bruge ethvert af String-omvendte programmer (illustreret ovenfor) og derefter tilføje en betingelse for at kontrollere, om det er palindrom eller ej.
Et eksempel på et program er givet nedenfor.
import java.util.Scanner; public class Reverse { public static void main(String() args) { // Initialized a String variable String str = 'racecar'; // Created a StringBuffer 'sb' and stored all the characters of the String StringBuffer sb = new StringBuffer(str); // Reversed the occurrence of characters sb.reverse(); /* * Stored the contents of StringBuffer into str2 * by converting it using toString() */ String str2 = sb.toString(); System.out.println('The Original String is: '+str); System.out.println('The reversed String is '+str2); if (str.equals(str2)) System.out.println('The String is palindrome'); else System.out.println('The String is not a palindrome'); } }
Produktion:

Q # 6) Hvordan vender jeg en streng i Java ord for ord?
Svar: Du kan vende en streng i Java (ord for ord) ved hjælp af den indbyggede Java String Split () -metode. Alt hvad du skal gøre er at sende mellemrum i Split () -metoden.
Tjek eksemplet på programmet nedenfor.
import java.util.Scanner; public class Reverse { public static void main(String() args) { String str; /* Getting input from console using Scanner class * */ Scanner in = new Scanner(System.in); System.out.println('Enter your String'); str = in.nextLine(); /* * Used split() method to print in reverse order * delimited by whitespace */ String() split = str.split(' '); for(int i=split.length-1; i>=0; i--) { System.out.print(split(i) + ' '); } } }
Produktion:

Q # 7) Er StringBuilder trådsikker? Hvorfor er StringBuilder hurtigere end StringBuffer?
Svar: Nej, StringBuilder er ikke trådsikker eller synkroniseret. StringBuffer er trådsikker. Således betragtes StringBuilder som hurtigere end StringBuffer.
Konklusion
I denne vejledning har vi lært om Java String reverse () -metoden og de forskellige teknikker, hvorigennem du kan vende en streng.
Desuden har vi dækket tilstrækkelige ofte stillede spørgsmål og programmeringseksempler, der hjælper dig med at forstå reverse () -metoden.
=> Besøg her for at se Java Training Series for alle.
Anbefalet læsning
- Vend en matrix i Java - 3 metoder med eksempler
- Java String Tutorial | Java strengmetoder med eksempler
- Java String Array- Vejledning med kodeeksempler
- Java String med String Buffer og String Builder Tutorial
- Java strenglængde () Metode med eksempler
- Java String indeholder () Metodevejledning med eksempler
- JAVA-vejledning til begyndere: 100+ praktiske Java-videovejledninger
- Java-streng sammenlignet med metode med programmeringseksempler