자바 맵 예제

Java 맵 예제는 2019년 7월 25일에 마지막으로 업데이트되었으며 이 페이지의 나머지 부분에서는 맵 인터페이스에 대해 자세히 설명합니다. 하지만 먼저 JDK 8 집계 작업을 사용하여 맵에 수집하는 몇 가지 예가 있습니다. 실제 개체를 모델링하는 것은 개체 지향 프로그래밍에서 일반적인 작업이므로 일부 프로그램은 예를 들어 부서별로 직원 그룹일 수 있다고 생각하는 것이 좋습니다. 나는 또한이 게시물의 끝에 이러한 방법을 사용 하 여 예제를 커버. 컬렉션 뷰는 맵을 반복할 수 있는 유일한 방법을 제공합니다. 이 예제에서는 각 구문이 있는 맵의 키를 반복하기 위한 표준 관용구를 보여 줍니다. 람다 식 및 집계 작업에 대한 자세한 내용은 집계 작업이라는 제목의 단원에서 확인할 수 있습니다. 이 예제는 약간 까다롭습니다. 먼저 맵의 임시 복사본을 만들고 원래 맵의 키인 관리자 값이 있는 모든 항목을 임시 복사본에서 제거합니다. 원래 맵에는 각 직원에 대한 항목이 있습니다.

따라서 임시 맵의 나머지 항목은 원래 맵의 모든 항목으로 구성되며, 관리자 값은 더 이상 직원이 아닙니다. 임시 복사본의 키는 우리가 찾고 있는 직원을 정확하게 나타냅니다. 컬렉션 프레임워크 인터페이스의 많은 메서드는 equals 메서드의 관점에서 정의됩니다. 예를 들어, containsKey (개체 키) 메서드에 대 한 사양 말한다: “이 맵에 키 k에 대 한 매핑을 포함 하는 경우에 true를 반환 합니다 (key==null ? k==null : key.equals(k))” 이 사양은 null이 아닌 인수 키를 사용하여 Map.containsKey를 호출하면 key.equals(k)가 모든 키 k. 구현에 대해 호출될 수 있음을 암시하는 것으로 해석되어서는 안 됩니다. 예를 들어, 먼저 두 키의 해시 코드를 비교합니다. (Object.hashCode() 사양은 같지 않은 해시 코드를 가진 두 개체가 같을 수 없음을 보장합니다. 일반적으로 다양한 Collections Framework 인터페이스의 구현은 구현자가 적절하다고 판단할 때마다 기본 개체 메서드의 지정된 동작을 자유롭게 활용할 수 있습니다.

이 예제에서는 HashMap 클래스의 거의 모든 중요한 메서드를 보여 주어 설명했습니다. 이 인터페이스에 포함된 “파괴적인” 메서드, 즉 이 맵이 작동 하도록 하는 맵을 수정 하는 메서드는 이 맵작업을 지원 하지 않는 경우 SupportOperationException을 throw 하도록 지정 됩니다.