在Java 9中,工厂方法已被添加到Collections API中。我们可以使用它来创建不可修改的列表、集合和映射对象,以减少代码行数。 List.of()、Set.of()、Map.of()和Map.ofEntries()是提供方便的创建不可变的集合的静态工厂方法。
以下是集合工厂方法的条件:
List.of(elements...) Set.of(elements...) Map.of(k1, v1, k2, v2)
import java.util.Set; public class CollectionsTest { public static void main(String args[]) { System.out.println("Java 9 Introduced a static factory method: of()"); Set<String> immutableCountrySet = Set.of("India", "England", "South Africa", "Australia"); System.out.println(immutableCountrySet); try { immutableCountrySet.add("Newzealand"); } catch(Exception e) { System.out.println("Caught Exception, Adding Entry to Immutable Collection!"); } } }
Java 9 Introduced a static factory method: of() [South Africa, India, Australia, England] Caught Exception, Adding Entry to Immutable Collection!