Maison > Java > javaDidacticiel > De combien de façons puis-je synchroniser une ArrayList en Java ?

De combien de façons puis-je synchroniser une ArrayList en Java ?

WBOY
Libérer: 2023-08-28 17:41:02
avant
1015 Les gens l'ont consulté

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

ArrayList est une sous-classe de la classe AbstractList, qui peut être utilisée pour stocker des éléments d'une collection de taille dynamique. ArrayList augmente sa taille pour accueillir de nouveaux éléments et diminue lorsque des éléments sont supprimés, d'où le nom resizing ou tableau dynamique. ArrayList peut autoriser les valeurs en double et les valeurs nulles .

Il existe deux méthodes pour synchroniser ArrayList en Java

Méthode Collections.synchronizedList ()

synchronizedList() est utilisée pour synchroniser les collections en Java.

Syntax

public static List<T> synchronizedList(List<T> list)
Copier après la connexion

Example

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);
         }
      }
   }
}
Copier après la connexion

Output

IND
AUS
WI
NZ
ENG
Copier après la connexion

CopyOnWriteArrayList

CopyOnWriteArrayList créera une liste d'éléments dans l'ordre de collection spécifié. Il est thread safe pour ArrayList avec accès simultané. Lorsqu'une ArrayList est modifiée, elle crée une nouvelle copie du tableau sous-jacent.

Syntaxe

public class CopyOnWriteArrayList<E> extends Object implements List<E>, RandomAccess, Cloneable, Serializable
Copier après la connexion

Exemple

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);
      }
   }
}
Copier après la connexion

Sortie

Displaying synchronized ArrayList:
Java
Scala
Python
Selenium
ServiceNow
Copier après la connexion

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:tutorialspoint.com
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal