>  기사  >  Java  >  Java 9에서 불변 세트를 어떻게 생성합니까?

Java 9에서 불변 세트를 어떻게 생성합니까?

王林
王林앞으로
2023-08-20 17:57:281383검색

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

불변 정적 팩토리 메소드 Set.of()는 Java 9에서 불변 컬렉션을 생성하는 편리한 방법을 제공할 수 있습니다.

Set.of() 메소드를 사용하여 생성된 set 인스턴스는 다음과 같은 특징을 갖습니다.

  • 팩토리 메서드로 반환된 컬렉션은 일반적으로 불변입니다. 즉, 컬렉션에 추가 할 수 없으며 제거 또는 교체 할 수 없습니다. 컬렉션에서 modifier 메서드를 호출하면 UnsupportedOperationException이 발생합니다.
  • 컬렉션의 요소가 변경 가능인 경우 컬렉션의 콘텐츠가 변경된 것처럼 보일 수 있습니다.
  • null 요소를 허용하지 않는 정적 팩토리 메소드를 사용하여 불변 컬렉션을 생성할 수 있습니다. null 요소가 포함된 컬렉션을 만들려고 하면 NullPointerException이 발생합니다.
  • 불변 컬렉션을 생성할 때 중복 요소는 거부됩니다. 중복 요소를 정적 팩토리 메서드에 전달하면 IllegalArgumentException이 발생합니다.
  • 컬렉션 요소의 반복 순서는 지정되지 않으며 변경될 수 있습니다.

Grammar

<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>
   }
}

Output

<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에서 불변 세트를 어떻게 생성합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
이 기사는 tutorialspoint.com에서 복제됩니다. 침해가 있는 경우 admin@php.cn으로 문의하시기 바랍니다. 삭제