ইমিউটেবল স্ট্যাটিক ফ্যাক্টরি মেথড Set.of() জাভা ৯-এ অনমডিফাইয়েবল সেট তৈরির সুবিধাজনক পথ প্রদান করে।
Set.of() মেথড ব্যবহার করে তৈরি সেট ইনস্ট্যান্সের বৈশিষ্ট্যগুলো:
- ফ্যাক্টরি মেথড দ্বারা রিটার্নড সেট প্রথাগতভাবে ইমিউটেবল। অর্থাৎ এলিমেন্টগুলো সেট থেকে যোগ, মুছে ফেলা বা রিপ্লেস করা যায় না। সেটে যেকোনো মিউটেটর মেথড কল করলে UnsupportedOperationException হয়।
- যদি সেটের কন্টেইনড এলিমেন্টগুলো মিউটেবল হয়, তবে সেটের কন্টেন্ট পরিবর্তিত মনে হতে পারে।
- ইমিউটেবল সেট স্ট্যাটিক ফ্যাক্টরি মেথড দিয়ে তৈরি হয় যা নাল এলিমেন্ট অনুমতি দেয় না। নাল এলিমেন্ট দিয়ে তৈরি করতে চাইলে NullPointerException হয়।
- ইমিউটেবল সেট তৈরির সময় ডুপ্লিকেট এলিমেন্ট রিজেক্ট করা হয়। স্ট্যাটিক ফ্যাক্টরি মেথডে ডুপ্লিকেট এলিমেন্ট পাস করলে IllegalArgumentException হয়।
- সেট এলিমেন্টের ইটারেশন অর্ডার অনস্পেসিফাইড এবং পরিবর্তনশীল।
সিনট্যাক্স
Set.of(E... elements)
উদাহরণ
import java.util.Set;
public class SetOfMethodTest {
public static void main(String args[]) {
Set<String> names = Set.of("Adithya", "Bhavish", "Chaitanya", "Jai");
System.out.println("Names - " + names);
names.add("Raja"); // throws UnsupportedOperationException
}
}
আউটপুট
Names - [Bhavish, Adithya, Jai, Chaitanya] Exception in thread "main" java.lang.UnsupportedOperationException ...