Java 集合 synchronizedSet() 方法



描述

Java 集合 synchronizedSet() 方法用於返回一個由指定集合支援的同步(執行緒安全)集合。

宣告

以下是 java.util.Collections.synchronizedSet() 方法的宣告。

public static <T> Set<T> synchronizedSet(Set<T> s)

引數

s - 這是要“包裝”到同步集合中的集合。

返回值

  • 方法呼叫返回指定集合的同步檢視。

異常

從非同步整數集合獲取同步集合示例

以下示例演示了 Java 集合 synchronizedSet(Set) 方法的使用。我們建立了一個 Integer 型別的 Set 物件。添加了一些條目,然後使用 synchronizedSet(Set) 方法,我們檢索了集合的同步版本並列印了集合。

package com.tutorialspoint;

import java.util.Collections;
import java.util.HashSet;
import java.util.Set;

public class CollectionsDemo {
   public static void main(String[] args) {
      
      // create set
      Set<Integer> set = new HashSet<Integer>();

      // populate the set
      set.add(1); 
      set.add(2);
      set.add(3);

      // create a synchronized set
      Set<Integer> synset = Collections.synchronizedSet(set);

      System.out.println("Synchronized set is :"+synset);
   }
}

輸出

讓我們編譯並執行上述程式,這將產生以下結果。

Synchronized set is :[1, 2, 3]

從非同步字串集合獲取同步集合示例

以下示例演示了 Java 集合 synchronizedSet(Set) 方法的使用。我們建立了一個 String 型別的 Set 物件。添加了一些條目,然後使用 synchronizedSet(Set) 方法,我們檢索了集合的同步版本並列印了集合。

package com.tutorialspoint;

import java.util.Collections;
import java.util.HashSet;
import java.util.Set;

public class CollectionsDemo {
   public static void main(String[] args) {
      
      // create set
      Set<String> set = new HashSet<String>();

      // populate the set
      set.add("TP"); 
      set.add("IS");
      set.add("BEST");

      // create a synchronized set
      Set<String> synset = Collections.synchronizedSet(set);

      System.out.println("Synchronized set is :"+synset);
   }
}

輸出

讓我們編譯並執行上述程式,這將產生以下結果。

Synchronized set is :[IS, BEST, TP]

從非同步物件集合獲取同步集合示例

以下示例演示了 Java 集合 synchronizedSet(Set) 方法的使用。我們建立了一個 String 和 Student 物件型別的 Set 物件。添加了一些條目,然後使用 synchronizedSet(Set) 方法,我們檢索了集合的同步版本並列印了集合。

package com.tutorialspoint;

import java.util.Collections;
import java.util.HashSet;
import java.util.Set;

public class CollectionsDemo {
   public static void main(String[] args) {
      
      // create set
      Set<Student> set = new HashSet<Student>();

      // populate the set
      set.add(new Student(1, "Julie")); 
      set.add(new Student(2, "Robert"));
      set.add(new Student(3, "Adam"));

      // create a synchronized set
      Set<Student> synset = Collections.synchronizedSet(set);

      System.out.println("Synchronized set is :"+synset);
   }
}
class Student {
   int rollNo;
   String name;

   Student(int rollNo, String name){
      this.rollNo = rollNo;
      this.name = name;
   }

   @Override
   public String toString() {
      return "[ " + this.rollNo + ", " + this.name + " ]";
   }
}

輸出

讓我們編譯並執行上述程式,這將產生以下結果。

Synchronized set is :[[ 1, Julie ], [ 2, Robert ], [ 3, Adam ]]
java_util_collections.htm
廣告