Java 9 で不変 Set を作成するにはどうすればよいでしょうか?

王林
リリース: 2023-08-20 17:57:28
転載
1390 人が閲覧しました

在Java 9中,我们如何创建一个不可修改的Set?

不変の静的ファクトリ メソッド Set.of()Java 9 で 不変のコレクションを作成する便利な方法を提供します

Set.of() メソッドを使用して作成されたセット インスタンスには、次の特性があります。

  • ファクトリ メソッドによって返されるコレクションは通常、immutable です。これは、 がコレクションに remove 、または replace 要素を追加できないことを意味します。コレクションに対して modifier メソッドを呼び出すと、UnsupportedOperationException がスローされます。
  • コレクション内の要素が mutable である場合、コレクションの内容が変化して見える可能性があります。
  • null 要素を許可しない静的ファクトリ メソッドを使用して、不変コレクションを作成できます。 null 要素を含むコレクションを作成しようとすると、NullPointerException がスローされます。
  • 不変コレクションを作成する場合、
  • 重複要素は拒否されます。重複した要素を静的ファクトリ メソッドに渡すと、IllegalArgumentException が発生します。
  • コレクション要素の反復順序は
  • 未指定であり、変更される可能性があります。
文法

<strong>Set.of(E... elements)</strong>
ログイン後にコピー

Example

の中国語訳は次のとおりです:

Example

import java.util.Set;
public class SetOfMethodTest {
   public static void main(String args[]) {
      Set<String> names = <strong>Set.of</strong>("Adithya", "Bhavish", "Chaitanya", "Jai");
      System.out.println("Names - " + names);
      names.add("Raja");       <strong>// throws UnsupportedOperationException</strong>
   }
}
ログイン後にコピー

出力

<strong>Names - [Bhavish, Adithya, Jai, Chaitanya]
</strong><strong>Exception in thread "main" java.lang.UnsupportedOperationException
 at java.base/java.util.ImmutableCollections.uoe(Unknown Source)
 at java.base/java.util.ImmutableCollections$AbstractImmutableSet.add(Unknown Source)
   at SetOfMethodTest.main(SetOfMethodTest.java:8)</strong>
ログイン後にコピー

以上がJava 9 で不変 Set を作成するにはどうすればよいでしょうか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:tutorialspoint.com
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート