CodeGym /Blog Jawa /Acak /Macem-macem Cara Mbalikake String ing Jawa
John Squirrels
tingkat
San Francisco

Macem-macem Cara Mbalikake String ing Jawa

Diterbitake ing grup
String ing basa Jawa uga bisa diarani minangka susunan karakter. String ing basa Jawa digunakake kanggo nyimpen teks/karakter. Ing basa pemrograman java, strings dianggep obyek. Ing Jawa, strings minangka obyek saka kelas sing wis ditemtokake yaiku String. Kabeh variabel string minangka conto saka kelas String ing java. Mula, kita bisa ngerti manawa senar ing Jawa dudu jinis primitif kaya int utawa char ing basa pamrograman liyane. Ing artikel iki, kita bakal maca carane mbalikke senar ing java prasyarat kanggo iki sing sampeyan kudu ngerti carane nggawe senar ing java , lan konsep dhasar saka inbuilt senar cara, lan carane nindakake operasi karo bantuan saka puteran.

Ruang lingkup artikel

- Ing artikel iki, kita bakal maca babagan macem-macem cara kanggo mbalikke string ing java. - Kita uga bakal weruh sawetara cara wis dibangun liwat kang kita bisa mbalikke senar ing java. - Kita uga bakal maca babagan kerumitan wektu lan papan saben cara mbalikke ing java. - Ana sawetara cara kanggo mbalikke senar ing Jawa, saben karo kaluwihan lan cacat. Ing artikel iki, kita bakal njelajah sawetara cara sing paling umum digunakake kanggo mbalikke senar ing Jawa.

Pambuka

String minangka obyek sing ora bisa diganti ing basa Jawa, strings mung minangka urutan karakter ing basa Jawa. String baris tunggal ing basa Jawa ditetepake nganggo kuotasi siji, dene pirang-pirang baris strings ing basa Jawa ditetepake nganggo kuotasi telu, java duwe sawetara metode senar sing kasedhiya, nanging dina iki ing artikel iki kita bakal maca babagan cara mbalikke senar ing java. Basa pemrograman Jawa minangka salah sawijining basa pamrograman sing paling akeh digunakake ing donya, lan dikenal kanthi gamblang lan gampang digunakake. Salah sawijining operasi sing paling umum sing ditindakake dening programer ing senar yaiku mbalikke. Ing artikel iki, kita bakal ngrembug macem-macem cara kanggo mbalikke string ing Jawa. Pisanan, ayo maca babagan cara sing paling umum nggunakake for loop ing java:

Walik string ing java nggunakake for loop:

Teknik iki minangka salah sawijining cara paling gampang kanggo mbalikke senar ing Jawa kanthi nggunakake loop for. Kita bisa ngulang liwat karakter senar saka mburi kanggo awal, lan nambah menyang variabel senar anyar. Punika conto carane mbalikke string nggunakake for loop :
//in the above code we have reversed the string using a for loop in java
public class reverseofthestring {
  public static void main(String[] args) {

    String s1 = "java is fun";
      // we are creating the second string to store the reversed string and print it while iterating the for loop
    String s2 = "";

    for(int i = s1.length()-1; i>=0; i--)
    {
        // in the above line we have stored the reversed string by iterating the for loop from the last index and stored the value in the second string created s2.
      s2 = s2 + s1.charAt(i);
    }

    System.out.print("The reversed string of the '"+s1+"' is: " );
    System.out.println(s2);
  }
}
Output
The reversed string of the s1 is:nuf si avaj
Ing kode ing ndhuwur, kita wis pisanan njupuk input saka senar jenenge s1 lan nggawe senar kosong s2 lan banjur iterated kanggo daur ulang saka indeks pungkasan banjur kita wis disimpen Nilai saben karakter ing senar kasebut. Jalanake kode ing ndhuwur ing editor sampeyan kanggo panjelasan sing luwih apik lan jelas. Kerumitan wektu kode ndhuwur iku O (N), lan kita wis iterated liwat kabeh unsur n kerumitan spasi saka kode ndhuwur iku O (N). Saiki ayo maca babagan proses sabanjure yaiku mbalikke senar nggunakake pembangun senar, mula saiki ayo maca kanthi rinci:

Mbalikake senar nggunakake kelas pembangun senar

Kita uga bisa mbalikke string ing Jawa kanthi nggunakake kelas StringBuilder. Kelas StringBuilder menehi cara mbalikke () sing bisa digunakake kanggo mbalikke senar. Cara mbalikke () kelas Java StringBuilder digunakake kanggo ngganti urutan karakter iki karo mbalikke saka urutan. Kelas StringBuilder ing java ora duwe metode toCharArray (), dene kelas String duwe metode toCharArray (). Saiki ayo ngerti kanthi bantuan conto:
public class reverseusingbuilder {
    public static void main(String[] args) {
        StringBuilder s1 = new StringBuilder("abc");
        System.out.println("The original string1 is  = " + s1);
        StringBuilder s2 = new StringBuilder("cab");
        System.out.println("The original string2 is = " + s2);
         StringBuilder s3 = new StringBuilder("wer");
        System. out.println("The original string3 is = " + s3);
        // reversing of stringbuilder
        System.out.println("The reverse of the string is reverse1 = " + s1.reverse());
        System.out.println("The reverse of the string2 is reverse2 = " + s2.reverse());
         System.out.println("The reverse of the string3 is reverse2 = " + s3.reverse());
    }
}
Output
The original string1 is  = abc
The original string2 is  =cab
The original string3 is  =wer
The reversed string1 is  = cba
The reversed string2 is  = bac
The reversed string3 is  =rew
Ing cara iki, kita bisa ndeleng yen nggunakake kelas string builder inbuilt kita wis mbalikke senar. Cara iki banget efisien, amarga mung mbutuhake pass siji liwat senar. Nanging, iku mbutuhake nggawe obyek StringBuilder anyar, kang bisa nambah sawetara overhead. Cara iki relatif prasaja lan gampang dingerteni, nanging bisa uga kurang efisien tinimbang cara liyane, amarga mbutuhake sawetara pass liwat senar lan nggawe senar anyar kanggo saben karakter. Jalanake kode ing ndhuwur ing editor sampeyan kanggo panjelasan sing luwih apik lan jelas. Saiki ayo ndeleng cara liya kanggo mbalikke senar nggunakake teknik rekursi:

Walik senar nggunakake rekursi

Rekursi minangka teknik ing ngendi fungsi kasebut diarani dhewe. Kita bisa nggunakake rekursi kanggo mbalikke senar kanthi ngilangi dadi substrings sing luwih cilik. Rekursi ing basa Jawa minangka proses ing ngendi sawijining metode diarani terus-terusan. Kanggo mbalikke senar ing java nggunakake recursion pisanan kita kudu mbusak karakter pisanan saka senar banjur nambah karakter sing ing mburi senar lan banjur kita kudu mbaleni langkah ndhuwur nganti senar input dadi kosong. Saiki ayo ngerti iki kanthi bantuan conto:
public class reverse string
{
//in this line we are writing the recursive function to reverse a string
public String reverse string(String s1)
{
//first we will check if the string is empty or not
if(s1.isEmpty())
{
System. out.println("String is empty.")
//if the above condition is true then it returns the same string as if the string is empty itself then we cannot reverse the string
return s1;
}
else
{
return reverseString(s1.substring(1))+s1.charAt(0);
}
}
public static void main(String[] args)
{
reversestring q1 = new reversestring();
String res1 = q1.reverseString("JAVA IS FUN");
String res2 = q1.reverseString("STRINGS OBJECTS JAVA");
String res3 = q1.reverseString("IMMUTABLE CLASS OBJECTS");
System.out.println(res1);
System.out.println(res2);
System.out.println(res3);
}
}
Output
NUF SI AVAJ
AVAJ STCEJBO SGNIRTS
STCEJBO SSALC ELBATUMMI
Mula kita bisa ndeleng manawa ing ndhuwur nggunakake rekursi kita wis mbalikke senar kasebut, mula kita mriksa manawa senar kasebut kosong utawa ora yen senar bakal kosong banjur ora ana karakter sing bisa dibalik. Cara iki bisa luwih efisien tinimbang cara kanggo loop, amarga mung mbutuhake pass siji liwat senar. Nanging, bisa uga luwih rumit lan angel dingerteni, amarga nggunakake rekursi . Jalanake kode ing ndhuwur ing editor sampeyan kanggo panjelasan sing luwih apik lan jelas. Ayo ndeleng conto liyane babagan cara mbalikke senar nggunakake rekursi ing java:
public static String reverseusingrecursion(String s1) {
    if (s1.length() == 1) {
        return s1;
    }
    //We have applied recursion in this line
    return s1.charAt(s1.length() - 1) + reverseUsingRecursion(s1.substring(0, s1.length() - 1));
}
Saiki ayo maca babagan cara liya kanggo mbalikke string ing java sing nggunakake array:

Mbalikake string ing java nggunakake array

Kita uga bisa mbalikke string kanthi ngowahi dadi array karakter, ngganti array, banjur ngowahi maneh dadi string. Kaping pisanan, kita kudu nggawe array karakter kosong kanthi ukuran sing padha karo string sing diwenehake, banjur kita kudu ngisi array karakter kanthi mundur karo karakter saka string sing diwenehake, lan pungkasane kita kudu ngowahi array karakter menyang string nggunakake cara salinan lan bali. Saiki ayo ngerti iki kanthi bantuan conto:
public class Main
{
    // In this Method of conversion we have to reverse a string in Java using a character array
    public static String reverse(String s1)
    {
        // we have to check if the string is empty or not and return if the string is null or empty
        if (s1 == null || s1.equals("")) {
            return s1;
        }
 // if it is equal to empty then we will simply print the string and break it.
        // else we will find the string length
        int len = str.length();

        // and then we have to create a character array of the same size as that of the string to store the value after reversing
        char[] new_arr = new char[n];

        // and by iterating the loop backward we have to fill the character array backward with characters in the string
        for (int i = 0; i < len; i++) {
            new_arr[len - i - 1] = str.charAt(i);
        }

        // and in the final step after reversing we have to convert the character array to string and return it
        to return String.copy value of(new_arr);
    }

    public static void main(String[] args)
    {
        // taking a string input for reverse
        String s1 = "JAVA IS FUN";

        // In this line we are calling the reverse function and reversing the string
        str = reverse(str);

        System.out.println("The reversed string is " + s1);
    }
}
Output
NUF SI AVA
Ing cara iki, kita kudu mbalikke senar menyang array karakter sing kita kenal, mula kita bakal mriksa yen senar kosong utawa ora lan bali yen senar kasebut null utawa kosong yen padha karo kosong, kita mung bakal nyithak senar lan break liya kita bakal nemokake dawa senar lan banjur kita kudu nggawe Uploaded karakter ukuran padha karo string kanggo nyimpen nilai sawise mbalikke lan dening iterasi daur ulang mundur kita kudu ngisi array karakter mundur karo karakter ing senar. lan ing langkah pungkasan sawise mbalikke kita kudu ngowahi array karakter kanggo senar lan bali. Jalanake kode ing ndhuwur ing editor sampeyan kanggo panjelasan sing luwih apik lan jelas. Saiki ayo maca babagan langkah sabanjure kita uga bisa mbalikke string ing java nggunakake Stream API. Dadi saiki ayo maca babagan kasebut kanthi rinci kanthi bantuan sawetara conto:

Mbalikake string ing java nggunakake Stream API:

Java 8 ngenalake Stream API sing bisa digunakake kanggo nindakake operasi gaya fungsional ing koleksi. Kita bisa nggunakake Stream API kanggo mbalikke senar dening Ngonversi menyang stream karakter, mbalikke stream, banjur ngowahi maneh kanggo senar. Kita bisa mbalikke string ing java nggunakake macem-macem lepen lan kolektor pisanan kita kudu input senar lan banjur nggunakake Peta ing kabeh String menyang StringBuilder obyek lan ing wektu sing padha mbalikke nggunakake mbalikke () metode kelas StringBuilder lan banjur Akhire, ngumpulake String mbalikke nggunakake Stream. cara ngumpulake () lan Kolektor. nggabungake () cara kita bakal print loro asli / mbalikke Strings bebarengan karo dawa. Saiki ayo ngerti iki kanthi bantuan conto:
public static String reverseUsingStream(String str) {
    return str. chars()
              .mapToObj(c -> (char) c)
              .collect(StringBuilder::new, StringBuilder::append, StringBuilder::append)
              .reverse()
              .toString();
}
Ing conto iki, kita wis mbalikke string ing java nggunakake java streams lan kolektor. Jalanake kode ing ndhuwur ing editor sampeyan kanggo panjelasan sing luwih apik lan jelas. Saiki ayo ndeleng carane kita bisa mbalikke senar nggunakake tumpukan. Saiki ayo maca babagan iki kanthi rinci kanthi bantuan conto:

Mbalikake senar nggunakake tumpukan

Ana cara liya kanggo mbalikke senar ing Jawa yaiku kanthi nggunakake tumpukan. Ide iki kanggo push saben karakter senar input menyang tumpukan lan banjur karakter pop saka tumpukan kanggo njaluk senar kuwalik. Saiki ayo maca luwih rinci babagan iki kanthi bantuan conto:
public static String reverse string(String input) {
    Stack<character> stack = new Stack<>();
    for (int i = 0; i < input.length(); i++) {
        stack.push(input.charAt(i));
    }
    StringBuilder sb = new StringBuilder();
    while (!stack.isEmpty()) {
        sb.append(stack.pop());
    }
    return sb.toString();
}

</character>
Ing conto ing ndhuwur, pisanan kita nggawe tumpukan kosong banjur mbalikke senar lan nglebokake unsur ing tumpukan. Cara iki prasaja, gampang dingerteni, lan efisien. Jalanake kode ing ndhuwur ing editor sampeyan kanggo panjelasan sing luwih apik lan jelas.

Kesimpulan

Cara pisanan nggunakake kelas StringBuilder, sing wis dibangun ing mbalikke () cara sing ngasilake senar anyar sing mbalikke saka senar asli. Cara liya yaiku nggunakake for loop, ing ngendi kita ngowahi string asli dadi array char lan ngulang liwat array kanthi urutan mbalikke, nemtokake karakter sing cocog menyang array char anyar, lan pungkasane nggawe string anyar nggunakake array char kasebut. Cara katelu nggunakake rekursi, ing ngendi kita nyebat fungsi rekursif lan ngatasi masalah kasebut kanthi nggabungake karakter pisanan saka senar kasebut kanthi substring sing dibalik saka karakter sing isih ana. Cara kaping papat yaiku nggunakake array kanggo mbalikke string ing basa Jawa. Ing cara kalima, kita digunakake API stream lan Penagih java kanggo mbalikke senar lan, Ing cara pungkasan digunakake tumpukan kanggo mbalikke senar ing java. Saben metode kasebut duwe kaluwihan lan kekurangan, lan pilihan metode kasebut gumantung saka syarat khusus masalah lan pilihan programer. Sakabèhé, cara iki nduduhake keluwesan lan versatility Jawa ing manipulasi string.
Komentar
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION