synchronizedList/synchronizedMap/synchronizedSetメソッド
コレクションをマルチスレッド環境でも利用できるようにする – synchronizedList/synchronizedMap/synchronizedSetメソッド- public static 
List synchronizedList(List list)  - public static 
Map synchronizedMap(Map m)  - public static 
Set synchronizedSet(Set s)  - T、K、V:要素型
 - list、m、s:変換対象のコレクション
 
コレクションフレームワークで提供されている実装クラスのほとんどは、デフォルトでは、マルチスレッド環境に対応していません。これは、シングルスレッド環境でマルチスレッドのための対応(=排他処理)を施すのは無駄なことであり、パフォーマンスが劣化する原因にもなるためです。
  そこで、コレクションフレームワークの実装クラスをマルチスレッド環境で利用する場合には、synchronizedList/synchronizedMap/synchronizedSetメソッドを介して、マルチスレッド対応のリスト/マップ/セットに変換しなければなりません。このようなコレクションのことを同期化コレクションと言います。
  例えば以下は、リスト(ArrayList)を同期化コレクションに変換した例です。
CollSynchronized.java(抜粋)
package com.example.mynavi.collection;
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
public class CollSynchronized {
  public static void main(String[] args) {
    Listlist = Collections.synchronizedList(new ArrayList<>());
    list.add("Windows");
    list.add("Linux");
    list.add("macOS");
    System.out.println(list);	// 結果:[Windows, Linux, macOS]
  }
}






