Selles programmis õpite antud lause ümber pöörama, kasutades Java-s rekursiivset silmust.
Selle näite mõistmiseks peaksid teil olema teadmised järgmistest Java programmeerimise teemadest:
- Java meetodid
- Java rekursioon
- Java string
Näide: Lause ümberpööramine rekursiooni abil
public class Reverse ( public static void main(String() args) ( String sentence = "Go work"; String reversed = reverse(sentence); System.out.println("The reversed sentence is: " + reversed); ) public static String reverse(String sentence) ( if (sentence.isEmpty()) return sentence; return reverse(sentence.substring(1)) + sentence.charAt(0); ) )
Väljund :
Pööratud lause on: krow oG
Ülaltoodud programmis on meil rekursiivne funktsioon reverse()
.
Igal iteratsioonil lisame järgmise reverse()
lause funktsiooni (liitma) lause esimese märgi abil charAt(0)
.
Rekursiivne kõne peab olema enne charAt()
, sest nii hakkavad viimased märgid vasakusse serva lisama. Kui muudate järjekorda, saate lõpuks originaalse lause.
Lõpuks jõuame tühja lauseni ja reverse()
tagastame tagurdatud lause.
Märkus . sentence.substring(1)
Meetod tagastab stringi lause osa, mis algab indeksist 1 kuni stringi lõpuni. Lisateabe saamiseks külastage Java Stringi alamstringi ().
Kordus | tagurpidi() | alamstring () | reversedString |
---|---|---|---|
1 | tagurpidi ("mine tööle") | "o töö" | tulemus + "G" |
2 | tagurpidi ("o Work") | "Töö" | tulemus + "o" + "G" |
3 | tagurpidi ("töö") | "Töö" | tulemus + "" + "o" + "G" |
4 | tagurpidi ("töö") | "ork" | tulemus + "W" + "" + "o" + "G" |
5 | tagurpidi ("ork") | "rk" | tulemus + "o" + "W" + "" + "o" + "G" |
6 | tagurpidi ("rk") | "k" | tulemus + "r" + "o" + "W" + "" + "o" + "G" |
7 | tagurpidi ("k") | "" | tulemus + "k" + "r" + "o" + "W" + "" + "o" + "G" |
Lõplik | tagurpidi("") | - | "" + "k" + "r" + "o" + "W" + "" + "o" + "G" = "kroW oG" |