English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Java 기본 가이드

Java 프로세스 제어

Java 배열

Java 방향대상(I)

Java 방향대상(II)

Java 방향대상(III)

Java 예외 처리

Java 목록(List)

Java 큐(큐)

Java 맵 집합

Java Set集合

Java 입력 출력(I/O)

Java Reader/Writer

Java 다른 주제

Java HashMap replaceAll() 사용 방법 및 예제

Java HashMap 메서드

Java HashMap replaceAll() 메서드는 지정된 함수의 결과로 해시 테이블의 모든 매핑을 대체합니다.

replaceAll() 메서드의 문법은 다음과 같습니다:

hashmap.replaceAll(Bifunction<K, V> function)

replaceAll() 매개변수

  • function -해시 맵의 각 항목에 적용되는 작업

replaceAll() 메서드의 반환 값

replaceAll() 메서드는 어떤 값도 반환하지 않습니다. 대신 함수 내의 새 값을 해시 맵의 모든 값으로 대체합니다.

예제1:모든 값을 대문자로 변경

import java.util.HashMap;
class Main {
    public static void main(String[] args) {
        //HashMap을 생성
        HashMap<Integer, String> languages = new HashMap<>();
        //HashMap에 항목 추가
        languages.put(1, "java");
        languages.put(2, "javascript");
        languages.put(3, "python");
        System.out.println("HashMap: " + languages);
        //모든 값을 대문자로 변경
        languages.replaceAll((key, value) -> value.toUpperCase());
        System.out.println("Updated HashMap: ", + languages);
    }
}

출력 결과

HashMap: {1=java, 2=javascript, 3=python}
Updated HashMap: {1=JAVA, 2=JAVASCRIPT, 3=PYTHON}

위의 예제에서는 languages라는 해시 맵을 생성했습니다. 이 줄을 주목하십시오

languages.replaceAll((key, value) -> value.toUpperCase());

여기서

  • (키, 값) -> value.toUpperCase() - 는 람다 표현식입니다. 그것은 해시 테이블의 모든 값을 대문자로 변환하여 반환합니다. 더 많은 정보를 얻으려면 다음을 방문하십시오Java Lambda 표현식.

  • replaceAll() - hash map의 모든 값을 람다 표현식이 반환하는 값으로 대체합니다.

예제2:모든 값이 키의 제곱으로 대체됨

import java.util.HashMap;
class Main {
    public static void main(String[] args) {
        // HashMap을 생성
        HashMap<Integer, Integer> numbers = new HashMap<>();
        // HashMap에 항목을 삽입
        numbers.put(5, 0);
        numbers.put(8, 1);
        numbers.put(9, 2);
        System.out.println("HashMap: " + numbers);
        //모든 값을 키의 제곱으로 대체
        numbers.replaceAll((키, 값) -> 키 * 키);;
        System.out.println("갱신된 HashMap: " + numbers);
    }
}

출력 결과

HashMap: {5=0, 8=1, 9=2}
갱신된 HashMap: {5=25, 8=64, 9=81}

위의 예제에서는 numbers라는 해시 매핑을 생성했습니다. 주의해야 할 이점은 다음과 같습니다.

numbers.replaceAll((키, 값) -> 키 * 키);

여기서

  • (키, 값) ->키 * 키  -  계산의 제곱을 반환

  • replaceAll() -   키와 값으로 (key,value)->key*key가 반환하는 값이 hashmap의 모든 값을 대체

Java HashMap 메서드