간결하고 리터럴 방식으로 특정 키-값 쌍을 사용하여 Java HashMap을 초기화하는 것은 개발자에게 어려운 기능이었습니다. 그러나 Java의 발전으로 단순화된 지도 생성이 가능해졌습니다.
Java 버전 9부터 Map 클래스에는 지도 생성을 간소화하는 팩토리 메서드가 도입되었습니다.
Map.of: 최대로 지도를 만들 수 있습니다. 간결한 구문을 사용하여 최대 10개 요소:
Map<String, String> test1 = Map.of("a", "b", "c", "d");
Map.ofEntries: 원하는 개수의 요소로 지도를 생성합니다.
import static java.util.Map.entry; Map<String, String> test2 = Map.ofEntries( entry("a", "b"), entry("c", "d") );
그러나 이러한 방법을 사용하면 불변의 결과가 발생한다는 점에 유의하는 것이 중요합니다. 지도. 변경 가능한 맵의 경우 다음을 사용하여 복사본을 생성할 수 있습니다.
mutableMap = new HashMap<>(Map.of("a", "b"));
Java 9 이전에는 직접 리터럴 초기화가 지원되지 않았습니다. 유사한 효과를 얻으려면 다음 기술을 사용할 수 있습니다.
이니셜라이저가 있는 익명 클래스: 생성자에서 맵을 초기화하는 익명 하위 클래스를 정의합니다.
Map<String, String> myMap = new HashMap<String, String>() {{ put("a", "b"); put("c", "d"); }};
기능 초기화: 맵을 생성하고 이를 초기화 프로그램에서 사용하는 함수를 만듭니다.
Map<String, String> myMap = createMap(); private static Map<String,String> createMap() { Map<String,String> myMap = new HashMap<String,String>(); myMap.put("a", "b"); myMap.put("c", "d"); return myMap; }
후자 접근 방식이 더 깔끔하며 익명 하위 클래스와 관련된 잠재적인 위험을 방지합니다.
위 내용은 Java에서 HashMap을 효율적으로 초기화하려면 어떻게 해야 합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!