[JAVA] Map, Hashmap, Hashset, Iterator

장성욱·2025년 7월 7일

JAVA

목록 보기
19/23

Map 메서드

put(key, value) : 키와 값 넣기
get(key) : 키로 값 꺼내기
remove(key) : 키로 값 삭제하기
containsKey(key) : 해당 키가 있는지 확인하기
containsValue(value) : 해당 값이 있는지 확인하기
keySet() : 모든 키 반환
values() : 모든 값 반환
size() : 저장된 쌍의 개수 반환
entrySet() : 전체 조회


Hashmap

어떤 key값(이름)에 value값(내용)을 저장 => 이름으로 내용 찾기 편함
정해진 순서가 없으며, value값은 중복이 가능해도 key값은 중복 불가

import java.util.HashMap;	// 기능 호출하기

HashMap<String, Integer> map = new HashMap <> ();

map.put("a", 100)	// a, 100 추가, a는 키값
map.size()		// 크기를 알려줌
map.get("a")	// 100출력
map.remove("a") // 키값만 입력하면 됨, 삭제
map.clear()		// 전체 삭제

전화번호부

import java.util.Scanner;
import java.util.HashMap;
class Main {
  public static void main(String[] args) {
    Scanner sc = new Scanner(System.in);
    HashMap<String, String> map = new HashMap<> ();

    System.out.print("이름을 입력해 주세요 : ");
    String name = sc.nextLine();
    System.out.print("전화번호를 입력해 주세요 : ");
    String number = sc.nextLine();

    map.put(name, number);

    if (map.containsKey(name)) {
      for (String key : map.keySet())  {
        System.out.println(key + " " + map.get(key));
      }
    }
  }
}

HashSet

순서, 중복을 허용하지 않는 데이터의 집합

import java.util.HashSet;	// 기능 호출하기


HashSet<String> set = new HashSet<> ();

set.add("a")	// a추가
set.contains("a") 	// a가 있는지 여부 판단 => true
set.size	// 크기 알려줌
set.remove("a")		// a삭제
set.clear() 	// 전체 삭제

LinkedList

연결리스트, 데이터의 빠른 삽입 + 삭제

LinkedList<String> list = new LinkedList<> ();

list.add // 추가
list.get() 	// 가져오기
list.getFirst 	// 처음 요소 가져오기
list.getLast	// 마지막 요소 가져오기
list.addFirst	// 맨 앞에 추가
list.addLast	// 맨 뒤에 추가

Iterator

컬렉션의 모든 데이터를 순회

import java.util.Iterator;	// 기능 호출하기


public class Main{
  public static void main(String[] args){
    ArrayList<String> list  = new ArrayList<>();
    list.add("철수");
    list.add("영희");
    //이터레이터로 변경
    Iterator<String> it = list.iterator(); 
    //리스트로부터 이터레이트를 얻어온다. 
   while(it.hasNext()){ 
     System.out.println(it.next());
   }
  }
}

hasNext - 다음 요소 확인 // it.hasNext() //true
next - 다음 요소 가져오기 // it.next() // "철수"
remove - 삭제 it.remove() // {}
profile
https://frost-puck-b0f.notion.site/B-2610fdaef71d80c49d1bccdcb575dcb5

0개의 댓글