java reverse string tutorial with programming examples
În acest tutorial, vom învăța să inversăm un șir în Java folosind metoda Reverse () a claselor StringBuilder și StringBuffer cu ajutorul unor exemple:
Aici vom discuta despre metoda inversă () String Java și despre utilizarea sa împreună cu suficiente exemple de programare, întrebări frecvente și întrebări bazate pe scenarii care vă vor oferi o idee despre domeniile aplicabile ale acestei metode.
După parcurgerea acestui tutorial, veți fi în măsură să înțelegeți mai bine metoda inversă () String Java și puteți aplica singură metoda în diferite programe de manipulare a șirurilor.
=> Vizitați aici pentru a afla Java de la zero.
Ce veți învăța:
Java Reverse String
Înainte de a începe, ar trebui să înțelegem că clasa Java String este imuabilă și nu are metoda reverse (). Cu toate acestea, clasele StringBuilder și StringBuffer au metoda Java reverse () încorporată.
După cum sugerează și numele, metoda reverse () este utilizată pentru a inversa ordinea aparițiilor tuturor caracterelor unui șir.
Sintaxă:
StringBuffer reverse()StringBuffer Reverse String
În acest exemplu , am inițializat o variabilă String și am stocat toate caracterele acelui String în StringBuffer. Apoi, am folosit metoda reverse () pentru a inversa apariția caracterelor șirului.
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); } }Ieșire:

StringBuilder Reverse String
În acest exemplu, încercăm să inversăm apariția personajelor prin StringBuilder Class. Realizăm metoda reverse () pe aceleași valori de intrare pe care le-am folosit în timpul 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); } } Ieșire:

Scenarii
Scenariul 1: Inversați un șir fără a utiliza metoda StringBuilder sau StringBuffer reverse ().
Explicaţie: În acest scenariu, vă vom arăta cum să inversați caracterele unui șir fără a utiliza metoda reverse ().
Am luat un șir de intrare și apoi l-am convertit în matrice de caractere. Cu ajutorul buclei for, am imprimat caracterele în ordine inversă.
cel mai bun Ripper DVD gratuit pentru Windows
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)); } } }Ieșire:

Scenariul 2: Inversați toate caracterele folosind metoda Split ().
Explicaţie: Acesta este un alt mod de a inversa apariția caracterelor unui șir. În acest scenariu, vom folosi metoda Split () pentru a împărți fiecare caracter al unui șir și folosind bucla pentru, vom imprima fiecare caracter în ordinea inversă a apariției.
Aici, am preluat intrarea prin consolă folosind Scanner Class.
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) + ''); } } }Ieșire:

Scenariul 3: Inversați toate caracterele folosind Swapping.
Explicaţie: Acesta este încă un alt mod de a inversa caracterele unui șir. Aici, am inițializat „i” și lungimea = 0.
În interiorul buclei for, am analizat caracterele de pe ambele părți, păstrând „i” egal cu zero, incrementând cu 1 și lungimea scăzând cu 1 pentru fiecare comparație între indexul inițial și ultimul index. Am continuat această condiție până când „i” devine „egal cu” sau „mai mare decât” lungimea.
În cele din urmă, cu ajutorul buclei forEach, am imprimat fiecare caracter.
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 Ieșire:

întrebări frecvente
Q # 1) Există o metodă reverse () String în Java?
Răspuns: Nu. Clasa String nu are o metodă reverse (). Cu toate acestea, puteți inversa un șir folosind mai multe moduri în clasa String în sine. De asemenea, StringBuilder, StringBuffer și Collections acceptă metoda reverse ().
Q # 2) Cum putem converti un StringBuilder în String?
Răspuns: Mai jos este programul în care am convertit elementele stocate într-un StringBuilder într-un String.
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); } } Ieșire:

Q # 3) Enumerați diferența dintre String, StringBuilder și StringBuffer?
cum se deschide fișierul cu java
Răspuns: Dat mai jos este diferența dintre String, StringBuilder și StringBuffer.
Şir StringBuffer StringBuilder Un șir este o clasă imuabilă. StringBuffer este o clasă Mutable care este sincronizată (thread-safe). StringBuilder este, de asemenea, o clasă Mutable care nu este sincronizată. Un șir este mai puțin eficient decât StringBuffer și StringBuilder, deoarece de fiecare dată când executăm manipularea șirului, creează un șir nou și aruncă vechiul șir pentru colectarea gunoiului. StringBuffer este mai puțin eficient. StringBuilder este mai eficient decât StringBuffer. Un șir este mai lent decât StringBuffer atunci când concatăm mai multe șiruri, deoarece creează de fiecare dată o nouă instanță. StringBuffer este mai lent decât StringBuilder. StringBuilder este rapid deoarece este nesincronizat.
Q # 4) Cum convertesc un caracter într-un șir în Java?
Răspuns: Putem converti un caracter într-un șir folosind o metodă încorporată „toString ()”.
Citire sugerată => Cum se face conversia Char to String în Java
Mai jos este programul în care am folosit metoda toString () pentru a converti un caracter într-un șir.
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); } } Ieșire:

Q # 5) Scrieți un program Java pentru a verifica dacă șirul este sau nu un palindrom (Folosind StringBuffer).
Răspuns: Putem folosi oricare dintre programele String reverse (ilustrat mai sus) și apoi adăugăm o condiție pentru a verifica dacă este palindrom sau nu.
Un exemplu de program este dat mai jos.
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'); } } Ieșire:

Q # 6) Cum se inversează un șir în Java cuvânt cu cuvânt?
Răspuns: Puteți inversa un șir în Java (cuvânt cu cuvânt) utilizând metoda încorporată Java String Split (). Tot ce trebuie să faceți este să treceți spațiul alb în metoda Split ().
Consultați exemplul de program de mai jos.
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) + ' '); } } } Ieșire:

Q # 7) StringBuilder este sigur pentru fire? De ce StringBuilder este mai rapid decât StringBuffer?
Răspuns: Nu, StringBuilder nu este sigur sau sincronizat. StringBuffer este sigur pentru fire. Astfel, StringBuilder este considerat mai rapid decât StringBuffer.
Concluzie
În acest tutorial, am aflat despre metoda Java String reverse () și diferitele tehnici prin care puteți inversa un șir.
Mai mult, am acoperit suficiente întrebări frecvente și exemple de programare care vă vor ajuta să înțelegeți metoda inversă ().
=> Vizitați aici pentru a vedea seria de antrenament Java pentru toți.
Lectură recomandată
- Inversați o matrice în Java - 3 metode cu exemple
- Tutorial Java String | Metode Java String cu exemple
- Java String Array - Tutorial cu exemple de cod
- Java String cu buffer de șiruri și tutorial de generare de șiruri
- Java String length () Metodă cu exemple
- Șirul Java conține () Tutorial metodă cu exemple
- Tutorial JAVA pentru începători: peste 100 de cursuri video Java practice
- Java String compare Metoda cu exemple de programare




