Java에서 ConcurrentHashMap 요소를 제거하고 액세스하는 방법은 무엇입니까?

Java Eseo Concurrenthashmap Yosoleul Jegeohago Aegseseuhaneun Bangbeob Eun Mueos Ibnikka



ConcurrentHashMap ” 클래스는 전통적인 HashMap의 향상된 버전입니다. 그것은 많은 시간을 절약하고, 더 쉽고, 유연성을 향상시키는 것과 같이 프로그래머에게 많은 이점을 제공합니다. 동시에 여러 작업을 나란히 수행할 수 있지만 노드 값을 여러 번 업그레이드하는 경우 한 번에 하나의 업그레이드만 수행됩니다.

이 기사는 Java에서 ConcurrentHashMap 요소를 제거하고 액세스하는 절차를 보여줍니다.

Java에서 ConcurrentHashMap 요소를 제거하는 방법은 무엇입니까?

'에서 특정 요소를 제거할 수 있습니다. ConcurrentHashMap ” 요소를 통해 “ 제거하다() ' 방법. 모든 요소를 ​​한 번에 제거하려면 ' 분명한() ” 방법이 최선의 선택입니다.







'remove()' 메서드에는 두 가지 변형이 있습니다.



  • 제거(키) ”는 지정된 “을 가진 엔티티를 삭제합니다. 열쇠 ” 'ConcurrentHashMap'에서.
  • 제거(키, 값) ”는 “을(를) 지정한 엔터티를 삭제합니다. 열쇠 ”에 해당하는 “ ” 'ConcurrentHashMap'에서.

더 나은 설명을 보려면 아래 코드 블록을 방문하십시오.



수입 java.util.concurrent.ConcurrentHashMap ;
수업 뿌리
{
공공의 공전 무효의 기본 ( [ ] 인수 ) //main() 메소드 생성
{ // ConcurrentHashMap 선언
ConcurrentHashMap 팀 = 새로운 ConcurrentHashMap ( ) ;
팀. 놓다 ( '토르' , 2 ) ;
팀. 놓다 ( '이상한' , 4 ) ;
팀. 놓다 ( '호크아이' , 6 ) ;
체계 . 밖으로 . 프린트 ( '동시 해시맵: ' + ) ;

정수 = 팀. 제거하다 ( '이상한' ) ;
체계 . 밖으로 . 프린트 ( '가치 ' + + '가 제거되었습니다' ) ;
체계 . 밖으로 . 프린트 ( '동시 해시맵: ' + ) ;

부울 결과 = 팀. 제거하다 ( '호크아이' , 6 ) ;
체계 . 밖으로 . 프린트 ( '{Hawkeye = 6} 항목이 삭제되었나요?' + 결과 ) ;
체계 . 밖으로 . 프린트 ( '업데이트된 ConcurrentHashMap: ' + ) ;

팀. 분명한 ( ) ;
체계 . 밖으로 . 프린트 ( '업데이트된 ConcurrentHashMap: ' + ) ;

}
}

위 코드 블록에 대한 설명:





  • 먼저 'ConcurrentHashMap'이라는 ' '를 생성한 후 '를 사용하여 더미 데이터를 삽입합니다. 놓다 ' 방법.
  • 다음으로 “ 제거하다() ” 방법이 사용되며 “ 이상한 '가 전달됩니다. 이 메소드는 키가 'Strange'인 엔티티를 맵에서 제거합니다.
  • 또한 'ConcurrentHashMap'을 통해 맵의 나머지 요소를 표시합니다.
  • 이제 '를 통과하십시오. 열쇠 ' 및 해당 ' ' 로 ' 제거하다() ” 메서드를 사용하여 “ConcurrentHashMap”에서 특정 키와 값을 가진 엔터티를 삭제합니다.
  • 그런 다음 'ConcurrentHashMap'을 표시하여 차이점을 시각적으로 확인하십시오.
  • 마지막으로 ' 분명한() ” 메서드를 사용하여 “ConcurrentHashMap” 내부에 상주하는 모든 요소를 ​​삭제합니다. 또한 마지막에 콘솔에 “ConcurrentHashMap”을 표시합니다.

컴파일 단계 종료 후:



스냅샷은 ConcurrentHashMap에서 제거된 요소를 보여줍니다.

Java에서 ConcurrentHashMap 요소에 액세스하는 방법은 무엇입니까?

'의 요소 ConcurrentHashMap ”는 여러 방법 그룹을 사용하여 액세스할 수 있습니다. 첫 번째 그룹에는 ' entrySet() ”, “ 키셋() ' 그리고 ' 값() 방법. 모든 요소를 ​​한 번에 검색하는 데 사용됩니다. 위의 방법을 사용하여 프로그래머는 모든 ' 열쇠 ”, “ ' 아니면 둘다 ' 핵심 가치 ”지도 매핑.

위 방법의 실제 구현을 이해하려면 아래 코드를 방문하십시오.

수입 java.util.concurrent.ConcurrentHashMap ;

수업 기본 {
공공의 공전 무효의 기본 ( [ ] 인수 ) //main() 메소드 생성
{ // ConcurrentHashMap 선언
ConcurrentHashMap 팀 = 새로운 ConcurrentHashMap ( ) ;
팀. 놓다 ( '토르' , 2 ) ;
팀. 놓다 ( '이상한' , 4 ) ;
팀. 놓다 ( '호크아이' , 6 ) ;
팀. 놓다 ( '흑표범' , 8 ) ;
체계 . 밖으로 . 프린트 ( '동시 해시맵: ' + ) ;
체계 . 밖으로 . 프린트 ( '키와 값 검색: ' + 팀. 엔트리셋 ( ) ) ;
체계 . 밖으로 . 프린트 ( '키 검색: ' + 팀. 키셋 ( ) ) ;
체계 . 밖으로 . 프린트 ( '값 검색: ' + 팀. ( ) ) ;
}
}

위 코드 블록에 대한 설명:

  • 먼저 'ConcurrentHashMap'이라는 이름의 'ConcurrentHashMap'을 만듭니다. ”를 사용하여 여러 요소를 삽입합니다. 놓다() ' 방법.
  • 다음으로 'ConcurrentHashMap'을 콘솔에 표시합니다. out.println() ' 방법.
  • 그런 다음 ' entrySet() ” 메서드를 사용하여 지도에 있는 모든 데이터를 검색합니다.
  • 그 후 ' 키셋() ” 메서드를 사용하여 맵에서 키만 검색합니다.
  • 마지막으로 ' 값() ” 메서드를 사용하여 각 키와 관련된 값만 검색합니다. 이것은 순서대로 값만 반환합니다.

위의 코드 실행 후:

위의 스냅샷에서 위에서 사용한 방법의 출력이 콘솔에 표시됩니다. 그리고 서로 다른 색상의 경계를 사용하여 각 방법의 출력 사이를 시각적으로 구분합니다.

이제 두 번째 그룹에는 ' 얻다() ' 그리고 ' getOrDefault() 방법. 이러한 방법은 ' 열쇠 ' 로부터 ' ConcurrentHashMap '. 예를 들어 아래 코드 블록을 방문하십시오.

수입 java.util.concurrent.ConcurrentHashMap ;
수업 기본 {
공공의 공전 무효의 기본 ( [ ] 인수 ) //main() 메소드 생성
{ // ConcurrentHashMap 선언
ConcurrentHashMap 팀 = 새로운 ConcurrentHashMap ( ) ;
팀. 놓다 ( '토르' , 2 ) ;
팀. 놓다 ( '이상한' , 4 ) ;
팀. 놓다 ( '호크아이' , 6 ) ;
팀. 놓다 ( '흑표범' , 8 ) ;
체계 . 밖으로 . 프린트 ( 'getOrDefault() 사용: ' + 값2 ) ;

정수 가치 1 = 팀. 얻다 ( '호크아이' ) ;
체계 . 밖으로 . 프린트 ( '지정된 값에 대해 검색된 키:' + 가치 1 ) ;
정수 값2 = 팀. getOrDefault ( '로마노프' , 10 ) ;
체계 . 밖으로 . 프린트 ( '동시 해시맵: ' + ) ;
}
}

위 코드에 대한 설명:

  • 동일하게 활용' ConcurrentHashMap ” 위의 코드 블록에서 생성됩니다.
  • 또한 ' 얻다() ” 메서드를 호출하고 키를 검색할 값을 괄호 안에 전달합니다.
  • 또한 '를 활용하여 getOrDefault() ” 메서드는 두 개의 매개변수/값, 값 및 기본 키를 사용합니다. 지정된 객체가 맵 내부에서 발견되면 해당 키가 검색됩니다. 지정된 값을 찾을 수 없으면 기본 키가 사용됩니다.
  • 그런 다음 두 메서드의 결과를 변수에 저장하고 시각화 목적으로 콘솔에 표시합니다.

위의 코드 블록 실행 후:

위의 스냅샷은 콘솔에서 검색 및 인쇄된 값과 관련된 키를 표시합니다.

결론

'에서 특정 요소를 제거/삭제하려면 ConcurrentHashMap ” “ 제거하다() ” 방법을 사용할 수 있습니다. 이를 사용하여 프로그래머는 특정 ' 열쇠 ' 또는 해당 ' '. '를 사용하여 분명한() ” 메서드를 사용하면 지도에 있는 모든 요소가 한 번에 삭제됩니다. 액세스를 위해 ' entrySet() ”, “ 키셋() ' 그리고 ' 값() ” 방법이 사용됩니다. 그들은 모든 ' 키/값 ”, “ 열쇠 ', 그리고 ' ' 로부터 ' ConcurrentHashMap ' 한 번에. 특정 키만 검색하려면 ' 얻다 ' 그리고 ' getOrDefault ” 방법이 사용됩니다.