Java
 Computer >> コンピューター >  >> プログラミング >> Java

JavaでArrayListを同期する方法はいくつありますか?


ArrayList AbstractListのサブクラスです クラスであり、動的サイズを格納するために使用できます 要素のコレクション。 ArrayListは、新しい要素に対応するためにサイズを拡大し、要素が削除されるとサイズを縮小するため、と呼ばれます。 サイズ変更可能 または動的配列。 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.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の同時アクセス。 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. JavaでJRadioButtonMenuItemを表示するにはどうすればよいですか?

    JRadioButtonMenuItem JMenuItemのサブクラスです Javaのクラス。 JRadioButtonMenuItem は、1つのアイテムのみが含まれるメニューアイテムのグループの一部であるメニューアイテムです。 グループ内で選択できます 選択したアイテムには、選択した状態が表示されます。 ButtonGroupに複数のラジオボタンメニュー項目を追加できます ボタングループを形成するオブジェクト。ボタングループ内の1つのラジオボタンメニュー項目が選択されている場合 、他のすべてのラジオボタンメニュー項目は選択解除されます 。 構文 public class JRa

  2. JavaでのJListの選択モードの種類はいくつですか?

    JList JComponentを拡張できるコンポーネントです ユーザーが1つ以上のアイテムを選択できるようにするオブジェクトのリストを表示するために使用されるクラス。 JavaでのJListの選択モードには3つのタイプがあります ListSelectionModel.SINGLE_SELECTION :一度に選択できるリストインデックスは1つだけです。 ListSelectionModel.SINGLE_INTERVAL_SELECTION :一度に選択できる連続間隔は1つだけです。 ListSelectionModel.MULTIPLE_INTERVAL_SELEC