Java를 사용하는데 있어서 List와 Map 등의 컬렉션을 다루는 처리를 많이 하게 됩니다.
Map은 List에 비해서 값을 추가 방법이 조금 다릅니다.
List에는 값을 추가하고 인덱스 등을 사용해 원하는 값만 가져오거나 합니다.
Map에는 값을 추가하기 위해는 키도 추가를 합니다.
이번에는 Map에 값을 추가할 수 있는 put메서드 사용방법을 알아보겠습니다.
Map을 선언하는 방법에 대해서는 아래 내용을 참조해주세요
put
Map에 값을 추가하려면 HashMap클래스에 준비되어 있는 put메서드를 사용합니다.
Map.put(키, 값)
put메서드는 첫 번째 인수로 키를 지정하고 두 번째 인수로 값을 지정합니다.
Map에 이미 등록되어 있는 키를 지정하게 되면 값을 덮어쓰기 합니다.
put메서드를 사용해 Map에 값을 추가하는 방법을 보겠습니다.
import java.util.*;
public class Main {
public static void main(String[] args) throws Exception {
// Mapの宣言
Map<String, String> map1 = new HashMap<String, String>();
// MAPにデータを格納
map1.put("key1", "apple");
map1.put("key2", "orange");
map1.put("key3", "melon");
System.out.println(map1.get("key1"));
System.out.println(map1.get("key2"));
System.out.println(map1.get("key3"));
}
}
결과
apple
orange
melon
Map인터페이스의 변수 map1을 선언하고 키 데이터형과 값의 데이터형을 각각 String형으로 지정했습니다.
그리고 값을 추가하기 위해 변수 map1에 put메서드를 사용하여 String형의 키와 값을 각각 설정했습니다.
키와 값이 제대로 설정되었는지 출력을 해본 결과 값으로 지정한 문자열이 제대로 출력되었습니다.
샘플에서도 알 수 있듯이 Map에서 값을 출력하기 위해 get메서드를 사용합니다.
get 메서드에는 키를 지정하며, 지정한 키에 저장되어 있는 값이 출력됩니다.
get 메서드에 아래에서 자세히 설명하겠습니다.
putAll
Map에 값을 일괄적으로 한 번에 추가하는 방법을 알아보겠습니다.
일괄로 값을 추가하기 위해서는 putAll을 사용합니다.
샘플을 보면서 사용 방법과 어떠한 경우에 유용할지 알아보겠습니다.
import java.util.*;
public class Main {
public static void main(String[] args) throws Exception {
// Mapの宣言
Map<String, String> map1 = new HashMap<String, String>();
Map<String, String> map2 = new HashMap<String, String>();
// MAPにデータを格納
map1.put("key1", "apple");
map1.put("key2", "orange");
map1.put("key3", "melon");
//putAllメソッドを使用してmMap1のデータをmMap2に追加
map2.putAll(map1);
System.out.println(map2.get("key1"));
System.out.println(map2.get("key2"));
System.out.println(map2.get("key3"));
}
}
결과
apple
orange
melon
샘플을 보면 변수 map1, map2를 선언하고 map1에 put메서드를 사용하여 값을 추가하고 있습니다.
그리고 map2에는 putAll메서드를 사용하여 변수 map1 지정하고 있습니다.
putAll메서드 사용해 다른 Map을 지정하게 되면 지정한 Map의 키와, 값을 모두 추가하게 됩니다.
map2 출력 결과를 확인해보면 map1 변수에 지정한 값이 출력된 것을 확인할 수 있습니다.
get
추가한 값을 취득하는 방법에 대해 알아보겠습니다.
Map에서 값을 취득하기 위해서는 get메서드를 사용합니다.
Map.get(키);
get메서드 인수에는 키를 지정합니다.
샘플을 보면서 사용 방법을 알아보겠습니다.
import java.util.*;
public class Main {
public static void main(String[] args) throws Exception {
// Mapの宣言
Map<String, String> map = new HashMap<String, String>();
// Mapにキーと値を格納
map.put("key1", "apple");
map.put("key2", "orange");
map.put("key3", "melon");
// Mapからデータを取得する
System.out.println( map.get("key1"));
System.out.println( map.get("key2"));
System.out.println( map.get("key3"));
System.out.println( map.get("key4"));
}
}
결과
apple
orange
melon
null
get메서드는 Map의 키를 지정해 Map의 값을 취득합니다.
get메서드에 지정한 키가 Map에 존재하지 않는 경우에는 null값을 반환합니다.
Map에 값을 추가하는 put메서드와 값을 취득하는 get메서드 사용 방법을 살펴봤습니다.
put과 get메서드는 Map을 사용할 때 자주 사용하는 메서드이기 때문에 사용 방법을 기억해 두는 것이 좋습니다.
댓글