CodeGym /జావా బ్లాగ్ /యాదృచ్ఛికంగా /జావాలో స్ట్రింగ్‌ను రివర్స్ చేయండి
John Squirrels
స్థాయి
San Francisco

జావాలో స్ట్రింగ్‌ను రివర్స్ చేయండి

సమూహంలో ప్రచురించబడింది

రివర్స్ స్ట్రింగ్ అంటే ఏమిటి?

“స్ట్రింగ్‌ను దాని చివరి అక్షరం నుండి మొదటి అక్షరం వరకు చదవడం ప్రారంభించండి. పేకాట! అది మీ రివర్స్డ్ స్ట్రింగ్."
ఇది ఎలా ఉంటుందో ఇక్కడ ప్రదర్శన ఉంది.

Input String = "X Y Z";
Output String = "Z Y X"

Input String = "1 2 3";
Output String = "3 2 1";

Input String = "I love Java!";
Output String = "!avaJ evol I";

జావాలో స్ట్రింగ్‌ను ఎలా రివర్స్ చేయాలి?

జావాలో స్ట్రింగ్‌ను రివర్స్ చేయడానికి వివిధ మార్గాలు ఉన్నాయి . అయినప్పటికీ, స్ట్రింగ్ క్లాస్ కోసం జావా ఎలాంటి రివర్స్() పద్ధతిని అందించదు . అమాయక విధానం లూప్ కోసం ఉపయోగించడంతో ప్రారంభమవుతుంది. సాంప్రదాయ పునరావృత విధానం. తర్వాత మేము StringBuilder మరియు StringBuffer వంటి ఇతర తరగతులు అందించే రివర్స్() పద్ధతులను ఉపయోగించడం ద్వారా దీన్ని రూపొందించవచ్చు .

విధానం 1 - పాత పాఠశాల పునరావృత మార్గం


public class StringReversal {

	public static String reverseInputString(String myString) {

		if (myString == null)
			return myString;

		String reverseString = "";

		for (int i = myString.length() - 1; i >= 0; i--) {		

			reverseString = reverseString + myString.charAt(i);
		}
		return reverseString;
	}

	public static void main(String[] args) {

		String myString1 = "X Y Z";
		System.out.println("reverse(" + myString1 + ") = " + reverseInputString(myString1));

		String myString2 = "1 2 3";
		System.out.println("reverse(" + myString2 + ") = " + reverseInputString(myString2));

		String myString3 = "I LOVE JAVA!";
		System.out.println("reverse(" + myString3 + ") = " + reverseInputString(myString3));

		String myString4 = "My favourite place to learn Java is CodeGym.";
		System.out.println("reverse(" + myString4 + ") = " + reverseInputString(myString4));

		String myString5 = "My name is Lubaina Khan.";
		System.out.println("reverse(" + myString5 + ") = " + reverseInputString(myString5));
		
		// Boundary Case to see what happens if a String is null
		String myString6 = null;
		System.out.println("reverse(" + myString6 + ") = " + reverseInputString(myString6));
		
		// Boundary Case to see what happens if a String is empty
		String myString7 = "";
		System.out.println("reverse(" + myString7 + ") = " + reverseInputString(myString7));
	}
}

అవుట్‌పుట్

రివర్స్(XYZ) = ZYX రివర్స్(1 2 3) = 3 2 1 రివర్స్(నేను జావాను ప్రేమిస్తున్నాను!) = !AVAJ EVOL నేను రివర్స్(జావా నేర్చుకోవడానికి నాకు ఇష్టమైన ప్రదేశం కోడ్‌జిమ్.) = .myGedoC si avaJ nrael ot ecalp etiruovaf y రివర్స్(నా పేరు లుబైనా ఖాన్.) = .nahK aniabuL si eman yM reverse(null) = null reverse() =

వివరణ


public static String reverseInputString(String myString) { ... }
రివర్స్‌ఇన్‌పుట్‌స్ట్రింగ్ పద్ధతి myString అనే ఇన్‌పుట్ స్ట్రింగ్‌ను తీసుకుంటుంది .

if (myString == null)
	return myString;
ఇన్‌పుట్ స్ట్రింగ్ అంటే myString శూన్యంగా ఉందో లేదో తనిఖీ చేయండి. శూన్యం కనుగొనబడితే, ఇన్‌పుట్‌ని యథాతథంగా తిరిగి ఇవ్వండి. మేము మరింత ముందుకు వెళ్లవలసిన అవసరం లేదు. ఏదైనా లోపాలను నివారించడానికి దీనిని సరిహద్దు కేసు నిర్వహణ అంటారు.

String reverseString = "";
అవుట్‌పుట్‌ను నిల్వ చేయడానికి ఖాళీ స్ట్రింగ్‌ను ప్రకటించండి.

for (int i = myString.length() - 1; i >= 0; i--) {		
	reverseString = reverseString + myString.charAt(i);
}
లూప్ కోసం సాధారణ ఉపయోగించండి . ఇన్‌పుట్ స్ట్రింగ్ యొక్క చివరి సూచిక నుండి ఇటరేటర్ iని ప్రారంభించండి . ఇన్‌పుట్ స్ట్రింగ్ యొక్క చివరి సూచికను యాక్సెస్ చేయండి మరియు దాన్ని అవుట్‌పుట్ స్ట్రింగ్‌లో నిల్వ చేయండి. మీరు 0వ సూచిక లేదా ఇన్‌పుట్ స్ట్రింగ్ ప్రారంభాన్ని చేరుకునే వరకు పునరావృతం చేస్తూ ఉండండి.

return reverseString;
రివర్స్ స్ట్రింగ్‌ను తిరిగి ఇవ్వండి మరియు మీ అవసరాలకు అనుగుణంగా దాన్ని ఉపయోగించండి.

విధానం 2 - స్ట్రింగ్ బిల్డర్ క్లాస్ యొక్క ఉపయోగం

జావాలో, ఒకసారి ప్రారంభించబడిన స్ట్రింగ్‌లోని కంటెంట్‌లు మార్చబడవు. అందువల్ల, స్ట్రింగ్ s కోసం రివర్స్() పద్ధతి అందుబాటులో లేదు . కానీ జావాలోని StringBuilder మరియు StringBuffer వంటి ఇతర తరగతులు మార్చగలిగే లేదా మార్చగలిగే కంటెంట్‌లను కలిగి ఉంటాయి. లూప్‌లు లేకుండా స్ట్రింగ్‌ను రివర్స్ చేయడానికి మరియు అంతర్నిర్మిత StringBuilder లేదా StringBuffer క్లాస్‌ని ఉపయోగించి దిగువ ఉదాహరణను చూద్దాం.

public class StringBuilderReversal {

	public static void main(String[] args) {

		String input1 = "A B C";
		StringBuilder inputText1 = new StringBuilder(input1);
		System.out.println("reverse(" + inputText1 + ") = " + inputText1.reverse());

		String input2 = "0 1 2 2 3 3 3";
		StringBuilder inputText2 = new StringBuilder(input2);
		System.out.println("reverse(" + inputText2 + ") = " + inputText2.reverse());

		String input3 = "Monday";
		StringBuilder inputText3 = new StringBuilder(input3);
		System.out.println("reverse(" + inputText3 + ") = " + inputText3.reverse());

		String input4 = "I love CodeGym!";
		StringBuilder inputText4 = new StringBuilder(input4);
		System.out.println("reverse(" + inputText4 + ") = " + inputText4.reverse());

		 // ReverseString using the StringBuilder class
		StringBuilder inputText5 = new StringBuilder("Reverse this String using StringBuilder Class.");
		System.out.println("reverse(" + inputText5 + ") = " + inputText5.reverse());

		 // ReverseString using the StringBuffer class
		StringBuffer inputText6 = new StringBuffer("Reverse this String using StringBuffer Class.");
		System.out.println("reverse(" + inputText6 + ") = " + inputText6.reverse());
	}
}

అవుట్‌పుట్

రివర్స్(ABC) = CBA రివర్స్(0 1 2 2 3 3 3) = 3 3 3 2 3 3 3) = 3 3 3 2 2 1 0 రివర్స్(సోమవారం) = yadnoM రివర్స్(నేను కోడ్‌జిమ్‌ని ప్రేమిస్తున్నాను!) = !myGedoC evol I రివర్స్ (StringBuilder Classని ఉపయోగించి ఈ స్ట్రింగ్‌ను రివర్స్ చేయండి .) = .ssalC redliuBgnirtS gnisu gnirtS siht esreveR రివర్స్ (స్ట్రింగ్‌బఫర్ క్లాస్‌ని ఉపయోగించి ఈ స్ట్రింగ్‌ను రివర్స్ చేయండి.) = .ssalC reffuBgnirtS gnisu gnirtS siht esreveR

వివరణ


String input1 = "A B C";
StringBuilder inputText1 = new StringBuilder(input1);
ఇన్‌పుట్ స్ట్రింగ్‌ను రివర్స్ చేయడానికి మీరు దానిని StringBuilder కి మార్చాలి . దాని కోసం, స్ట్రింగ్‌బిల్డర్ కన్స్ట్రక్టర్‌కు ఇన్‌పుట్ స్ట్రింగ్‌ను పాస్ చేయండి .

System.out.println("reverse(" + inputText1 + ") = " + inputText1.reverse());
స్ట్రింగ్‌ను స్ట్రింగ్‌బిల్డర్‌గా మార్చిన తర్వాత , మీరు దాని రివర్స్‌ని పొందవచ్చు మరియు అవుట్‌పుట్‌ను ప్రింట్ చేయవచ్చు .

 // ReverseString using the StringBuffer class
StringBuffer inputText6 = new StringBuffer("Reverse this String using StringBuffer Class.");
ప్రత్యామ్నాయంగా, మీరు స్ట్రింగ్‌బిల్డర్ లేదా స్ట్రింగ్‌బఫర్‌కి నేరుగా స్ట్రింగ్‌ను పంపవచ్చు .

ముగింపు

ఈ పోస్ట్ ముగిసే సమయానికి, స్ట్రింగ్స్ యొక్క రివర్సల్ మరియు స్ట్రింగ్‌బిల్డర్ మరియు స్ట్రింగ్‌బఫర్ యొక్క ఇతర తరగతులను ఉపయోగించి దాన్ని ఎలా సాధించాలో మీకు తెలిసి ఉండాలి. మీరు మీ సౌలభ్యం ప్రకారం ఏదైనా పద్ధతిని ఎంచుకోవచ్చు. మీరు ఇరుక్కుపోయినట్లు అనిపించినప్పుడు సంకోచించకండి. అప్పటి వరకు సాధన చేస్తూ మెరుస్తూ ఉండండి.
వ్యాఖ్యలు
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION