ホームページ  >  記事  >  Java  >  Java で ArrayList を同期するには何通りの方法がありますか?

Java で ArrayList を同期するには何通りの方法がありますか?

WBOY
WBOY転載
2023-08-28 17:41:02998ブラウズ

在Java中,有几种方法可以同步一个ArrayList?

ArrayListAbstractList クラスのサブクラスで、動的サイズの要素を格納するために使用できます。 コレクション。 ArrayList は、新しい要素を収容できるようにサイズを拡大し、要素が削除されるとサイズが縮小するため、 Resizable または 動的配列という名前が付けられています。 ArrayList では、 重複値と null 値を許可できます。

Java で ArrayList を同期するには 2 つのメソッドがあります

Collections.synchronizedList () メソッド

synchronizedList() メソッドは Java でコレクションを同期するために使用されます。

構文

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.<strong>synchronizedList</strong>(list);
      <strong>synchronized</strong>(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 では スレッドセーフです。 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) {
      <strong>CopyOnWriteArrayList </strong>list = new <strong>CopyOnWriteArrayList</strong>();
      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

以上がJava で ArrayList を同期するには何通りの方法がありますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事はtutorialspoint.comで複製されています。侵害がある場合は、admin@php.cn までご連絡ください。