১. ক্যারেক্টার অ্যারে ব্যবহার করে
- দুটি স্ট্রিং নিন, ধরি str1 এবং str2 যা str1-এর শুরুতে যোগ করা হবে।
- দুটি স্ট্রিং-এর লেন্থের যোগফল 만큼 একটি ক্যারেক্টার অ্যারে তৈরি করুন।
- ০তম পজিশন থেকে শুরু করে অ্যারের প্রতিটি এলিমেন্টে str2-এর ক্যারেক্টারগুলো ভরুন।
- এখন, (str2-এর লেন্থ)তম পজিশন থেকে অ্যারের শেষ পর্যন্ত প্রথম স্ট্রিং-এর ক্যারেক্টারগুলো ভরুন।
উদাহরণ
import java.util.Scanner;
public class StringBufferExample {
public static void main(String args[]) {
System.out.println("Enter string1: ");
Scanner sc = new Scanner(System.in);
String str1 = sc.next();
System.out.println("Enter string2: ");
String str2 = sc.next();
char charArray[] = new char[str1.length() + str2.length()];
for (int i = 0; i < str2.length(); i++) {
charArray[i] = str2.charAt(i);
}
for (int i = str2.length(); i < charArray.length; i++) {
charArray[i] = str1.charAt(i - str2.length());
}
String result = new String(charArray);
System.out.println(result);
}
}
আউটপুট
Enter string1: krishna
Enter string2: kasyap
kasyapkrishna
২. StringBuffer ব্যবহার করে
জাভা StringBuffer ক্লাস প্রদান করে স্ট্রিং-এর বিকল্প হিসেবে যেখানে ক্যারেক্টার সিকোয়েন্সে অনেক মডিফিকেশন করার প্রয়োজন। আপনি একটি StringBuffer-এর কন্টেন্ট বারবার মডিফাই/ম্যানিপুলেট করতে পারেন ছাড়া অনেক অনইউজড অবজেক্ট ছেড়ে দিয়ে।
এই ক্লাসের append() মেথড একটি স্ট্রিং ভ্যালু প্যারামিটার হিসেবে গ্রহণ করে এবং বর্তমান StringBuffer অবজেক্টে যোগ করে।
toString() মেথড বর্তমান StringBuffer অবজেক্টের কন্টেন্ট স্ট্রিং হিসেবে রিটার্ন করে।
তাই, একটি স্ট্রিংকে অন্য স্ট্রিং-এর শুরুতে যোগ করতে:
- দুটি স্ট্রিং নিন (str1, str2)।
- একটি খালি StringBuffer অবজেক্ট তৈরি করুন।
- প্রথমে str2 append() করুন, তারপর str1 append() করুন।
- অবশেষে toString() ব্যবহার করে স্ট্রিং-এ রূপান্তর করুন।
উদাহরণ
import java.util.Scanner;
public class StringBufferExample {
public static void main(String args[]) {
System.out.println("Enter string1: ");
Scanner sc = new Scanner(System.in);
String str1 = sc.next();
System.out.println("Enter string2: ");
String str2 = sc.next();
StringBuffer sb = new StringBuffer();
sb.append(str2);
sb.append(str1);
String result = sb.toString();
System.out.println(result);
}
}
আউটপুট
Enter string1: krishna
Enter string2: kasyap
kasyapkrishna
সারসংক্ষেপ: StringBuffer (থ্রেড-সেফ) বা StringBuilder (নন-থ্রেড-সেফ, দ্রুততর) ব্যবহার করাই ベস্ট প্র্যাকটিস। ক্যারেক্টার অ্যারে ম্যানুয়াল এবং এরর-প্রোন।