গুয়াভা লাইব্রেরি জাভা ডেভেলপারদের জন্য স্ট্রিং হ্যান্ডলিংয়ের জন্য বেশ কিছু শক্তিশালী এবং কার্যকরী মেথড সরবরাহ করে। স্ট্রিং ম্যানিপুলেশন প্রায় প্রতিটি জাভা অ্যাপ্লিকেশনে গুরুত্বপূর্ণ, এবং গুয়াভা লাইব্রেরি এই প্রক্রিয়াটি আরও সহজ এবং উন্নত করে তোলে।
গুয়াভার স্ট্রিং হ্যান্ডলিং মেথডের বৈশিষ্ট্য
গুয়াভা লাইব্রেরি স্ট্রিং হ্যান্ডলিংয়ের জন্য কিছু বিশেষ ফিচার সরবরাহ করে যা জাভার স্ট্যান্ডার্ড লাইব্রেরির চেয়ে আরও বেশি সুবিধা দেয়। এর মধ্যে সবচেয়ে গুরুত্বপূর্ণ দুটি মেথড হলো Joiner এবং Splitter। এই মেথডগুলি স্ট্রিং ম্যানিপুলেশনকে আরও দ্রুত এবং সহজ করে তোলে।
Joiner
গুয়াভার Joiner ক্লাস স্ট্রিংয়ের একটি集合 বা অ্যারের উপাদানগুলোকে একটি নির্দিষ্ট সেপারেটর দিয়ে যুক্ত করার জন্য ব্যবহৃত হয়। এটি মূলত অনেক স্ট্রিংকে একত্রিত করে একটি নতুন স্ট্রিং তৈরি করতে সাহায্য করে।
উদাহরণ:
import com.google.common.base.Joiner;
public class GuavaJoinerExample {
public static void main(String[] args) {
String[] fruits = {"Apple", "Banana", "Orange"};
// Joiner ব্যবহার করে স্ট্রিং গুলি একত্রিত করা
String result = Joiner.on(", ").join(fruits);
System.out.println(result); // Output: Apple, Banana, Orange
}
}
এখানে, Joiner.on(", ").join(fruits) স্ট্রিং অ্যারের সব উপাদানকে ", " দ্বারা আলাদা করে একত্রিত করেছে। এর ফলে একটি কমা দ্বারা আলাদা করা স্ট্রিং তৈরি হয়েছে।
Splitter
গুয়াভার Splitter ক্লাস স্ট্রিংয়ের একটি বড় পংক্তি (string) কে একটি নির্দিষ্ট সেপারেটর দ্বারা বিভক্ত করতে ব্যবহৃত হয়। এটি বড় স্ট্রিংকে ছোট ছোট অংশে ভাগ করতে সহায়তা করে।
উদাহরণ:
import com.google.common.base.Splitter;
public class GuavaSplitterExample {
public static void main(String[] args) {
String fruits = "Apple, Banana, Orange";
// Splitter ব্যবহার করে স্ট্রিং বিভক্ত করা
Iterable<String> result = Splitter.on(", ").split(fruits);
for (String fruit : result) {
System.out.println(fruit);
}
// Output:
// Apple
// Banana
// Orange
}
}
এখানে, Splitter.on(", ").split(fruits) কমা এবং স্পেস দ্বারা আলাদা করা স্ট্রিংগুলোকে পৃথক পৃথক উপাদানে বিভক্ত করেছে।
অন্যান্য স্ট্রিং ম্যানিপুলেশন মেথড
গুয়াভা লাইব্রেরি আরও কিছু স্ট্রিং ম্যানিপুলেশন মেথড প্রদান করে যা স্ট্রিং পরিচালনাকে আরও সহজ এবং কার্যকরী করে তোলে।
Strings 类
গুয়াভা লাইব্রেরিতে Strings ক্লাস রয়েছে, যা বেশ কিছু স্ট্রিং সম্পর্কিত সহায়ক মেথড সরবরাহ করে। এর মধ্যে কিছু গুরুত্বপূর্ণ মেথড:
isNullOrEmpty: এটি চেক করে যে স্ট্রিংটি
nullঅথবা খালি (empty) কিনা।উদাহরণ:
import com.google.common.base.Strings; public class GuavaStringsExample { public static void main(String[] args) { String str1 = ""; String str2 = null; String str3 = "Hello"; System.out.println(Strings.isNullOrEmpty(str1)); // Output: true System.out.println(Strings.isNullOrEmpty(str2)); // Output: true System.out.println(Strings.isNullOrEmpty(str3)); // Output: false } }nullToEmpty: এটি
nullস্ট্রিংকে একটি খালি স্ট্রিংতে (empty string) রূপান্তরিত করে।উদাহরণ:
import com.google.common.base.Strings; public class GuavaNullToEmptyExample { public static void main(String[] args) { String str1 = null; String str2 = "Hello"; System.out.println(Strings.nullToEmpty(str1)); // Output: (empty string) System.out.println(Strings.nullToEmpty(str2)); // Output: Hello } }
Case Formatting
গুয়াভা লাইব্রেরি স্ট্রিংয়ের কেস (case) পরিবর্তন করার জন্যও কিছু কার্যকরী মেথড প্রদান করে, যেমন toUpperCase এবং toLowerCase। তবে, এটি আরও উন্নত কেস ফরম্যাটিং ফিচারও প্রদান করে।
CaseFormat: এটি স্ট্রিংয়ের কেস পরিবর্তন করতে ব্যবহৃত হয়, যেমন
camelCaseথেকেsnake_caseবা এর বিপরীত।উদাহরণ:
import com.google.common.base.CaseFormat; public class GuavaCaseFormatExample { public static void main(String[] args) { String camelCase = "myVariableName"; String snakeCase = CaseFormat.LOWER_CAMEL.to(CaseFormat.LOWER_UNDERSCORE, camelCase); System.out.println(snakeCase); // Output: my_variable_name } }
এখানে, CaseFormat.LOWER_CAMEL.to(CaseFormat.LOWER_UNDERSCORE, camelCase) স্ট্রিংটি camelCase থেকে snake_case এ রূপান্তরিত করেছে।
গুয়াভা স্ট্রিং হ্যান্ডলিংয়ের সুবিধা
- সহজ এবং পরিষ্কার কোড:
Joiner,Splitter, এবংStringsক্লাসের মাধ্যমে স্ট্রিং হ্যান্ডলিং অনেক সহজ হয়ে যায়। এটি কোডকে আরও পরিষ্কার এবং পাঠযোগ্য করে তোলে। - কাস্টমাইজেশন:
JoinerএবংSplitterকাস্টম সেপারেটর দিয়ে স্ট্রিং ম্যানিপুলেশন করার সুযোগ দেয়, যা স্ট্রিং হ্যান্ডলিংকে আরও ফ্লেক্সিবল করে তোলে। - প্রদর্শনযোগ্যতা: স্ট্রিংগুলির মধ্যে কেস পরিবর্তন এবং ফরম্যাটিং সহজে করা যায়, যা আরও বোধগম্য এবং ব্যবহারযোগ্য স্ট্রিং তৈরি করতে সাহায্য করে।
গুয়াভা লাইব্রেরির স্ট্রিং হ্যান্ডলিং মেথডগুলি জাভা ডেভেলপারদের স্ট্রিং ম্যানিপুলেশনকে আরও সহজ এবং কার্যকরী করে তোলে, যা কোড লেখার সময় সময় সাশ্রয়ী এবং কোডের গুণমান উন্নত করে।
Read more