English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
Java HashMap replace() 메서드는 지정된 키의 맵핑을 해시 맵에서 지정된 새 값을 대체합니다
replace() 메서드의 문법은 다음과 같습니다:
hashmap.replace(K key, V oldValue, V newValue)
key - 대체할 맵핑 키
oldValue (선택)- 맵에서 대체할 값
newValue - oldValue는 이 값으로 대체됩니다
HashMap replace() 메서드는 맵을 대체하고 반환합니다:
옵션 파라미터 oldValue가 존재하지 않으면 지정된 키와 연관된 이전 값
옵션 파라미터 oldValue가 존재하면 true
주의:지정된 키가 null 값으로 맵핑되거나 hashmap에 없으면 이 메서드는 null을 반환합니다.
import java.util.HashMap; class Main { public static void main(String[] args) { // HashMap을 생성하다 HashMap<Integer, String> languages = new HashMap<>(); //항목을 HashMap에 추가 languages.put(1, "Python"); languages.put(2, "English"); languages.put(3, "JavaScript"); System.out.println("HashMap: " + languages); //대체 키2의 매핑 String value = languages.replace(2, "Java"); System.out.println("대체된 값: "); + value); System.out.println("업데이트된 HashMap: "); + languages); } }
출력 결과
HashMap: {1=Python, 2를 대체 3=JavaScript} 대체된 값: English 업데이트된 HashMap: {1=Python, 2를 Java로 업데이트 3=JavaScript}
위의 예제에서 languages라는 해시 매핑을 생성했습니다. 여기서 replace() 메서드를 사용하여 키1(1를 지정된 값 Java로 대체
여기서 replace() 메서드는 선택가능한 oldValue 매개변수가 없습니다. 따라서, 그것은 기존 값을 반환합니다(English).
import java.util.HashMap; class Main { public static void main(String[] args) { //HashMap을 생성하다 HashMap<String, String> countries = new HashMap<>(); //항목을 HashMap에 삽입 countries.put("Washington", "America"); countries.put("Ottawa", "Canada"); countries.put("Canberra", "Australia"); System.out.println("Countries:\n"); + countries); // 지도 {Washington = America}를 대체 countries.replace("Washington", "America", "USA"); // true를 반환 countries.replace("Canberra", "New Zealand", "Victoria"); // false를 반환 System.out.println("replace()를 실행한 후의 Countries:\n"); + countries); } }
출력 결과
Countries: {Canberra=Australia, Ottawa=Canada, Washington=America} replace()를 실행한 후의 Countries: {Canberra=Australia, Ottawa=Canada, Washington=USA}
위의 예제에서 countries라는 해시 매핑을 생성했습니다. 이 줄을 주목하세요.
countries.replace("Washington", "America", "USA");
여기서, replace() 메서드는 선택적인 oldValue 매개변수(America)를 포함하고 있으므로, 키 Washington의 값 America의 매핑을 새 값 USA로 대체합니다.
하지만 주의하세요
countries.replace("Canberra", "New Zealand", "Victoria");
여기서, 해시 매핑에서 키 Canberra는 값 New Zealand에 매핑되어 있지 않으므로, replace() 메서드는 어떤 값도 대체하지 않습니다.
주의:다음과 같이 사용할 수 있습니다 Java HashMap clear() 메서드는 해시 매핑에서 모든 매핑을 제거합니다.
HashMap에서, put()와 replace() 메서드의 문법이 매우 유사합니다.
// put() 문법 hashmap.put(key, value) // replace() 문법 hashmap.replace(key, value)
그리고, 해시 매핑이 지정된키의 매핑을 대체합니다. 이 두 메서드는 모두 지정된 키와 연결된 값을 대체합니다.
하지만, 해시 매핑이 지정된 매핑을 포함하지 않으면키의모든 매핑이면
put() 메서드는 지정된키과값새 매핑을 삽입하다
replace() 메서드는 null을 반환합니다
import java.util.HashMap; class Main { public static void main(String[] args) { // HashMap을 생성하다 HashMap<Integer, String> languages1 = new HashMap<>(); // HashMap에 항목을 삽입하다 languages1.put(1, "Python"); languages1.put(2, "JavaScript"); //languages와 유사한 다른 HashMap을 생성하다1의 HashMap HashMap<Integer, String> languages2 = new HashMap<>(); //language에서 모든 항목을 가져오기1language에 넣기2 languages2.putAll(languages1); System.out.println("HashMap: " + languages1); // 사용 put() languages2.put(3, "Java"); System.out.println("put()之后的HashMap:\n" + languages2); // 사용 replace() languages1.replace(3, "Java"); System.out.println("HashMap after replace():\n" + languages1); } }
출력 결과
HashMap: {1=Python, 2=JavaScript} put() 이후의 HashMap: {1=Python, 2=JavaScript, 3=Java} HashMap 이후의 HashMap(): {1=Python, 2=JavaScript}
위의 예제에서 두 개의 languages 이름을 가진1와 languages2의 해시 매핑. 우리는 다음을 사용했습니다HashMap putAll()메서드를 사용하여 두 해시 매핑이 동일한 매핑을 가지도록 합니다.
이곳에 해시 매핑에 키가 존재하지 않습니다3매핑을 추가합니다. 따라서,
put() 메서드는 새로운 매핑을(3 = Java) 추가HashMap
replace() 메서드는 어떤 작업도 수행하지 않습니다
접근Java HashMap put()메서드를 통해 추가된 항목에 대한更多信息를 알아보세요.