Java 컬렉션 불변 크기 예외(ImmutableSizeException)에 대한 솔루션
Java 컬렉션을 사용할 때 때때로 불변 크기 예외(ImmutableSizeException)가 발생할 수 있습니다. 이 예외는 일반적으로 컬렉션의 크기를 수정하려고 할 때 발생하지만 컬렉션은 변경할 수 없도록 미리 정의되어 있습니다. 이 기사에서는 이 문제에 대한 몇 가지 솔루션을 소개하고 해당 코드 예제를 제공합니다.
import com.google.common.collect.ImmutableList; public class ImmutableCollectionExample { public static void main(String[] args) { ImmutableList<String> names = ImmutableList.of("Alice", "Bob", "Charlie"); // 尝试修改集合大小,将会抛出UnsupportedOperationException异常 names.add("David"); } }
import java.util.ArrayList; import java.util.List; public class CopyCollectionExample { public static void main(String[] args) { List<String> names = new ArrayList<>(); names.add("Alice"); names.add("Bob"); names.add("Charlie"); // 创建副本进行操作 List<String> updatedNames = new ArrayList<>(names); updatedNames.add("David"); // 将结果赋值给原始集合 names = updatedNames; } }
import java.util.ArrayList; import java.util.List; public class MutableCollectionExample { public static void main(String[] args) { List<String> names = new ArrayList<>(); names.add("Alice"); names.add("Bob"); names.add("Charlie"); // 修改集合大小 names.add("David"); } }
어떤 솔루션을 선택하든 특정 요구 사항과 시나리오에 따라 결정해야 합니다. 컬렉션 데이터를 수정하지 않고 읽기만 하면 되는 경우 불변 컬렉션이 더 나은 선택입니다. 컬렉션 크기를 자주 변경해야 하는 경우 변경 가능한 컬렉션이 더 편리합니다. 또한 스레드 안전성을 보장하기 위해 멀티 스레드 환경에서 컬렉션 작업에도 주의를 기울여야 합니다.
요약:
위 솔루션을 통해 Java 컬렉션 크기 불변 예외(ImmutableSizeException) 문제를 효과적으로 해결하고 프로그램의 신뢰성과 안정성을 향상시킬 수 있습니다.
위 내용은 Java 컬렉션 크기 불변 예외(ImmutableSizeException)에 대한 솔루션의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!