java.util এর কালেকশন ক্লাস প্যাকেজ পদ্ধতি যা একচেটিয়াভাবে সংগ্রহের উপর কাজ করে এই পদ্ধতিগুলি বিভিন্ন অতিরিক্ত ক্রিয়াকলাপ প্রদান করে যার মধ্যে পলিমরফিক অ্যালগরিদম জড়িত।
এই শ্রেণীটি unmodifiable() পদ্ধতির বিভিন্ন রূপ প্রদান করে যা নীচে দেখানো হয়েছে −
Sr. No | পদ্ধতি এবং বর্ণনা |
---|---|
1 | স্থির এই পদ্ধতিটি যেকোনও সংগ্রহের বস্তুকে গ্রহণ করে এবং নির্দিষ্ট সংগ্রহের একটি অপরিবর্তনীয় দৃশ্য প্রদান করে। |
2 | স্ট্যাটিক এই পদ্ধতিটি তালিকা ইন্টারফেসের একটি বস্তু গ্রহণ করে এবং এটির একটি অপরিবর্তনীয় দৃশ্য প্রদান করে। |
3 | স্থির এই পদ্ধতিটি মানচিত্র ইন্টারফেসের একটি বস্তু গ্রহণ করে এবং এটির একটি অপরিবর্তনীয় দৃশ্য প্রদান করে। |
4 | স্ট্যাটিক এই পদ্ধতিটি সেট ইন্টারফেসের একটি বস্তু গ্রহণ করে এবং এটির একটি অপরিবর্তনীয় দৃশ্য প্রদান করে। |
5 | স্ট্যাটিক এই পদ্ধতিটি SortedMap ইন্টারফেসের একটি বস্তু গ্রহণ করে এবং এটির একটি অপরিবর্তনীয় দৃশ্য প্রদান করে। |
6 | স্থির এই পদ্ধতিটি SortedSet ইন্টারফেসের একটি অবজেক্ট গ্রহণ করে এবং নির্দিষ্ট সাজানো সেটের একটি অপরিবর্তনীয় দৃশ্য প্রদান করে। |
আপনি সংগ্রহের ক্ষেত্রে যেকোন একটি পদ্ধতি ব্যবহার করে শুধুমাত্র পঠনযোগ্য একটি সংগ্রহ বস্তু তৈরি করতে পারেন।
উদাহরণ
জাভা প্রোগ্রাম অনুসরণ করে একটি ArrayList অবজেক্ট তৈরি করে, এতে উপাদান যোগ করে, এটিকে শুধুমাত্র পঠনযোগ্য তালিকা অবজেক্টে রূপান্তর করে।
import java.util.Collection; import java.util.Collections; import java.util.Vector; public class CollectionReadOnly { public static void main(String[] args) { //Instantiating an ArrayList object Vector<String> vector = new Vector<String>(); vector.add("JavaFx"); vector.add("Java"); vector.add("WebGL"); vector.add("OpenCV"); System.out.println(vector); Collection<String> immutableVector = Collections.unmodifiableCollection(vector); System.out.println("Vector converted to read only "+immutableVector); immutableVector.add("CoffeeScript"); } }
ব্যতিক্রম
[JavaFx, Java, WebGL, OpenCV] Array list converted to read only [JavaFx, Java, WebGL, OpenCV] Exception in thread "main" java.lang.UnsupportedOperationException at java.util.Collections$UnmodifiableCollection.add(Unknown Source) at September19.CollectionReadOnly.main(CollectionReadOnly.java:20)
একবার আপনি একটি তালিকা অবজেক্টের শুধুমাত্র পঠনযোগ্য দৃশ্য পুনরুদ্ধার করলে আপনি এর বিষয়বস্তু পরিবর্তন করতে পারবেন না, যেমন আপনি সরাসরি এটি থেকে উপাদান যোগ করতে বা মুছতে পারবেন না বা Iterator অবজেক্ট ব্যবহার করে, যদি আপনি এটি করেন তাহলে একটি UnsupportedOperationException উত্থাপিত হবে।