কম্পিউটার

জাভাতে একটি ArrayList সিঙ্ক্রোনাইজ করার কতগুলি উপায়?


একটি অ্যারেলিস্ট AbstractList এর একটি সাবক্লাস ক্লাস এবং এটি একটি গতিশীল আকারের সংরক্ষণ করতে ব্যবহার করা যেতে পারে উপাদান সংগ্রহ। একটি ArrayList নতুন উপাদানগুলিকে মিটমাট করার জন্য তার আকার বৃদ্ধি করে এবং উপাদানগুলি সরানো হলে আকারকে সঙ্কুচিত করে, তাই একে বলা হয় আকারযোগ্য অথবা ডাইনামিক অ্যারে। একটি ArrayList ডুপ্লিকেট এবং নাল মানকে অনুমতি দিতে পারে .

জাভাতে অ্যারেলিস্ট সিঙ্ক্রোনাইজ করার দুটি উপায় আছে

Collections.synchronizedList() পদ্ধতি

The synchronizedList() জাভাতে সংগ্রহগুলি সিঙ্ক্রোনাইজ করার জন্য পদ্ধতি ব্যবহার করা হয়।

সিনট্যাক্স

public static List<T> synchronizedList(List<T> list)

উদাহরণ

import java.util.*;
public class SynchronizedListTest {
   public static void main(String[] args) {
      List<String> list = new ArrayList<String>();
      list.add("IND");
      list.add("AUS");
      list.add("WI");
      list.add("NZ");
      list.add("ENG");
      List<String> synlist = Collections.synchronizedList(list);
      synchronized(synlist) {
         Iterator<String> itr = synlist.iterator();
         while(itr.hasNext()) {
            String str = itr.next();
            System.out.println(str);
         }
      }
   }
}

আউটপুট

IND
AUS
WI
NZ
ENG


CopyOnWriteArrayList

CopyOnWriteArrayList ৷ নির্দিষ্ট সংগ্রহের ক্রমে উপাদানগুলির একটি তালিকা তৈরি করবে। এটি থ্রেড-নিরাপদ অ্যারেলিস্টের সমবর্তী অ্যাক্সেস। যখন একটি ArrayList সংশোধন করা হয়, তখন এটি অন্তর্নিহিত অ্যারের একটি নতুন অনুলিপি তৈরি করবে৷

সিনট্যাক্স

public class CopyOnWriteArrayList<E> extends Object implements List<E>, RandomAccess, Cloneable, Serializable

উদাহরণ

import java.util.*;
import java.util.concurrent.*;
public class CopyOnWriteArrayListTest {
   public static void main(String[] args) {
      CopyOnWriteArrayList list = new CopyOnWriteArrayList();
      list.add("Java");
      list.add("Scala");
      list.add("Python");
      list.add("Selenium");
      list.add("ServiceNow");
      System.out.println("Displaying synchronized ArrayList: ");
      Iterator itr = list.iterator();
      while(itr.hasNext()) {
         String str = itr.next();
         System.out.println(str);
      }
   }
}

আউটপুট

Displaying synchronized ArrayList:
Java
Scala
Python
Selenium
ServiceNow

  1. জাভাতে একটি JRadioButtonMenuItem কিভাবে প্রদর্শন করবেন?

  2. জাভাতে একটি JList এর জন্য কত ধরনের নির্বাচন মোড?

  3. জাভাতে ড্রাইভার নিবন্ধন করার জন্য কতগুলি উপায় আছে?

  4. জাভাতে মেথড ওভাররাইডিং প্রতিরোধ করার কয়টি উপায়?