• 티스토리 홈
  • 프로필사진
    chantleman
  • 방명록
  • 공지사항
  • 태그
  • 블로그 관리
  • 글 작성
chantleman
  • 프로필사진
    chantleman
    • 분류 전체보기 (328)
      • 프로젝트 (1)
      • react (2)
      • 코딩테스트 (133)
        • lv0 (101)
        • lv1 (10)
        • lv2 (7)
        • lv3 (15)
      • 오류 (14)
      • 리눅스 (5)
      • 자바 (75)
        • spring (7)
      • js (35)
      • 오라클 (39)
        • PLSQL (3)
      • cs (5)
      • 도커 aws (3)
      • 단축키 (3)
      • 나만봐 (0)
  • 방문자 수
    • 전체:
    • 오늘:
    • 어제:
  • 최근 댓글
      등록된 댓글이 없습니다.
    • 최근 공지
        등록된 공지가 없습니다.
      # Home
      # 공지사항
      #
      # 태그
      # 검색결과
      # 방명록
      • hash
        2024년 07월 26일
        • chantleman
        • 작성자
        • 2024.07.26.:27

         

         

        HashSet

        - key로 이루어짐

        - key값은 중복 허용하지 않고 순서가 보장되지 않음

        - set 타입의 대표 컬렉션

         

         

        주요 메소드

        .add(key)          : 값 추가

        .remove(key)    : 값 삭제

        .contains(key)   : 포함 여부

        .iterator(key)     : 전체 출력을 위한 이터레이터

         

         

        		Set set = new HashSet();
        		set.add(1);
        		set.add("가");
        		set.add("a");
        		set.add(2);
        		
        		Iterator it = set.iterator();
        		
        		while(it.hasNext()) {
        			System.out.println(it.next());			
        		}

         

         


         

        HashMap

         

        - key와 value로 이루어짐

        - key값은 중복을 허용하지 않고, 순서가 보장되지 않음

        - map 타입의 대표 컬렉션

         

         

        주요메소드

        .put(key, value)    : 데이터 입력 key값은 중복 허용 x, value값은 중복 허용

        .get(key)               : key값을 통해 value값을 꺼내올 수 있음

        .keySet()               : key로 이루어진 hashSet값을 가져옴

         

         

        Map에는 key와 value가 한쌍이기때문에 generic(<>)에도 String(컬럼 이름), Integer(실제 값) 기입

        만약 value의 타입이 int 하나가 아니라 여러 타입의 값들이라면 Object로 기입

        	Map<String, Integer> map = new HashMap();
        	map.put("홍길동", 95);
        	map.put("이순신", 70);
            
        	Set keySet = map.keySet();
        	Iterator<String> it = keySet.iterator();
        	while(it.hasNext())
        	{
        		String key = it.next();
        		int value = map.get(key);
        		System.out.println(key+", "+value);
        	}

         

         

         


         

        HashMap 은 속도가 빠르다는 특징이 있습니다.

         

        DB는 하드디스크에, JAVA는 메모리에 데이터가 저장돼서 JAVA가 DB보다 빠른데

        HashMap까지 있어서 속도가 더 빠릅니다. (그만큼 HashMap이 중요)

         

         

         

        HashMap은 DB에 매핑된 데이터를 갖고올때도 사용됩니다.

        (Map의 key값이 DB의 컬럼과 맵핑되고, value는 DB의 데이터가 돼서 데이터 갖고올 수 있습니다.)

         

        key : 컬럼

        value : 데이터

         

        Hash Set과 비슷하지만 다른 점이 있다면 

        Hash Map은 value를 넣을 수 있는 공간이 있다는 점입니다. (key는 중복x, value는 중복 o)

        예) 은행 계좌번호(키) 조회하면 잔액(값) 확인할 수 있음

         

         


         

        put   vs   set

        put은 주로 map 인터페이스 구현할 때 (키와 값의 쌍을 추가하거나 갱신할 때)

            Map<String, String> map = new HashMap<>();
            map.put("key1", "value1");
            map.put("key2", "value2");

         

        set은 주로 list 인터페이스 구현할 때 (특정 인덱스의 요소를 갱신할 때)

            List<String> list = new ArrayList<>();
            list.add("value1"); // 0번째 인덱스에 추가
            list.add("value2"); // 1번째 인덱스에 추가
            list.set(1, "newValue2"); // 1번째 인덱스를 "newValue2"로 갱신

         

         

         

         

         

         

         

        728x90

        '자바' 카테고리의 다른 글

        eclispe 상위 버전  (0) 2024.07.29
        collection  (0) 2024.07.26
        date, calendar  (0) 2024.07.25
        try-catch, throw Exception  (2) 2024.07.24
        간단한 게시판 예제  (1) 2024.07.24
        다음글
        다음 글이 없습니다.
        이전글
        이전 글이 없습니다.
        댓글
      조회된 결과가 없습니다.
      스킨 업데이트 안내
      현재 이용하고 계신 스킨의 버전보다 더 높은 최신 버전이 감지 되었습니다. 최신버전 스킨 파일을 다운로드 받을 수 있는 페이지로 이동하시겠습니까?
      ("아니오" 를 선택할 시 30일 동안 최신 버전이 감지되어도 모달 창이 표시되지 않습니다.)
      목차
      표시할 목차가 없습니다.
        • 안녕하세요
        • 감사해요
        • 잘있어요

        티스토리툴바