Java String Reverse Example: String কে উল্টো করে দেখানোর জন্য Java তে বেশ কয়েকটি পদ্ধতি রয়েছে। এখানে আমরা কিছু জনপ্রিয় পদ্ধতির উদাহরণ দেখাবো যা দিয়ে একটি String কে উল্টো (reverse) করা যায়।
Method 1: Using StringBuilder or StringBuffer
Java তে StringBuilder এবং StringBuffer ক্লাসে reverse() মেথড রয়েছে, যা খুব সহজে একটি স্ট্রিংকে উল্টো করে দিতে পারে। এই পদ্ধতিটি সাধারণত mutability এর কারণে দ্রুত এবং কার্যকরী।
Example: Using StringBuilder
public class StringReverseExample {
public static void main(String[] args) {
String original = "Hello, World!";
// StringBuilder ব্যবহার করে String উল্টো করা
StringBuilder reversed = new StringBuilder(original);
reversed.reverse();
System.out.println("Original String: " + original);
System.out.println("Reversed String: " + reversed);
}
}
Output:
Original String: Hello, World!
Reversed String: !dlroW ,olleH
Explanation:
- এখানে
StringBuilderক্লাসেরreverse()মেথড ব্যবহার করা হয়েছে, যাoriginalস্ট্রিংটি উল্টো করে নতুনStringBuilderঅবজেক্টে স্টোর করে।
Method 2: Using a for Loop
আপনি একটি সাধারণ for লুপ ব্যবহার করে স্ট্রিংয়ের প্রতিটি চরিত্রকে উল্টো অবস্থানে বসিয়ে একটি নতুন স্ট্রিং তৈরি করতে পারেন।
Example: Using for Loop
public class StringReverseExample {
public static void main(String[] args) {
String original = "Hello, World!";
String reversed = "";
// String কে উল্টো করার জন্য for loop ব্যবহার
for (int i = original.length() - 1; i >= 0; i--) {
reversed += original.charAt(i);
}
System.out.println("Original String: " + original);
System.out.println("Reversed String: " + reversed);
}
}
Output:
Original String: Hello, World!
Reversed String: !dlroW ,olleH
Explanation:
original.length() - 1থেকে শুরু করে, প্রতিটি অক্ষরকে উল্টো করেreversedস্ট্রিংয়ে অ্যাড করা হয়েছে।
Method 3: Using Recursion
এখানে আমরা recursion ব্যবহার করে স্ট্রিংটিকে উল্টো করে দেখানোর একটি পদ্ধতি দেখবো।
Example: Using Recursion
public class StringReverseExample {
public static void main(String[] args) {
String original = "Hello, World!";
// Recursion দিয়ে String উল্টো করা
String reversed = reverseString(original);
System.out.println("Original String: " + original);
System.out.println("Reversed String: " + reversed);
}
// Recursion function to reverse a string
public static String reverseString(String str) {
if (str.isEmpty()) {
return str; // Base case: if string is empty, return it
} else {
return reverseString(str.substring(1)) + str.charAt(0); // Recursive case
}
}
}
Output:
Original String: Hello, World!
Reversed String: !dlroW ,olleH
Explanation:
reverseString()মেথডে রিকর্সিভলি স্ট্রিংয়ের প্রথম অক্ষর বাদ দিয়ে বাকি অংশের উপরreverseString()কল করা হচ্ছে। শেষে প্রথম অক্ষরটি যোগ করে পূর্ণ স্ট্রিংটি উল্টো হয়ে যাচ্ছে।
Method 4: Using Java 8 Streams
Java 8 এর Streams API ব্যবহার করে স্ট্রিংকে উল্টো করা সম্ভব। এখানে String কে Stream এ পরিণত করে উল্টো করা হবে।
Example: Using Java 8 Streams
import java.util.stream.*;
public class StringReverseExample {
public static void main(String[] args) {
String original = "Hello, World!";
// Java 8 Stream ব্যবহার করে String উল্টো করা
String reversed = new StringBuilder(original)
.reverse()
.toString();
System.out.println("Original String: " + original);
System.out.println("Reversed String: " + reversed);
}
}
Output:
Original String: Hello, World!
Reversed String: !dlroW ,olleH
Explanation:
- এই উদাহরণে Stream বা Java 8 এর lambda expression ব্যবহার না করে, আমরা StringBuilder ক্লাসের
reverse()মেথড ব্যবহার করেছি যেটি Java 8 এ খুবই সুবিধাজনক।
Java তে একটি String কে উল্টো (reverse) করার জন্য বিভিন্ন পদ্ধতি রয়েছে। এখানে StringBuilder, for loop, recursion এবং Streams API ব্যবহারের মাধ্যমে স্ট্রিং উল্টো করার উদাহরণ দেওয়া হয়েছে।
- StringBuilder এবং StringBuffer দ্রুত এবং কার্যকরী উপায় হিসেবে বিবেচিত হয়, কারণ এই ক্লাসগুলো mutable (পরিবর্তনযোগ্য) এবং ডেটার উপর আরও বেশি নিয়ন্ত্রণ প্রদান করে।
- for loop পদ্ধতিটি কাস্টমাইজেশন এবং রিকার্সিভ স্ট্রিং রিভার্সের জন্য উপকারী।
- Recursion স্ট্রিং রিভার্সের একটি আকর্ষণীয় এবং একাডেমিক পদ্ধতি, তবে এটি ছোট ডেটার জন্য উপযুক্ত।
- Streams API ব্যবহার করলে কমপ্যাক্ট এবং প্রফেশনাল কোড লেখা যায়, তবে অন্যান্য পদ্ধতির চেয়ে কিছুটা বেশি কোড লেখা হয়।
এভাবে আপনি যে কোন স্ট্রিং উল্টো করার জন্য উপযুক্ত পদ্ধতি নির্বাচন করতে পারেন।
Read more