본문 바로가기
학습 log (이론)/java

'List VS Map' 기본 사용법 정리

by abbear25 2016. 12. 6.

List (ArrayList기준)

객체의 수에 따라 자동크기 조절

아이템을 벡터의 어느 곳에나 추가 가능

메소드 종류

add(삽입 값), 맨 뒤에 요소 삽입

add(위치, 삽입 값), 특정 위치에 요소 삽입

get(위치), 지정된 위치의 요소 반환

set(위치, 삽입 값), 특정 위치의 값을 삽입 값으로 교체

remove(위치), 지정된 위치의 요소 제거

remove(삽입 값), 지정된 요소의 값 제거(중복 값 있는 경우 맨 앞의 하나만 제거)

clear(), 모든 요소 제거

indexOf(삽입 값), 지정된 요소의 위치 값 반환(중복 값 있는 경우 맨 앞의 하나만 반환)

isEmpty(), 비어있는지 확인

toArray(), 모든 요소를 배열로 반환


Map(HashMap기준)

HashTable과 달리 null값을 허용

삽입 순서를 유지하지 않음

*LinkedHashMap, 만약 Map에 추가되는 값의 순서가 중요할 경우에 HashMap대신에 사용

HashMap과 동일하지만 이중연결리스트를 사용

메소드 종류

put(키 값, 삽입 값), 임의의 위치에 값 추가

get(키 값), 주어진 키와 일치하는 값을 반환

remove(키 값), 주어진 키 값과 일치하는 키와 삽입 값 제거

clear(), 모든 키와 삽입 값  제거

containsKey(키 값), 주어진 키가 배열안에 존재하는지 확인

containsValue(삽입 값), 삽입 값이 배열 안에 존재하는지 확인

entrySet(), 키와 값의 쌍으로 구성된 모든 Map.Entry 객체를 set에 담아서 반환

*entrySet() 사용예제

 
Iterator iterator = selectMapList.entrySet().iterator();
            while(iterator.hasNext()){
                Map.Entry entry = (Map.Entry) iterator.next();
                extraList.add((LocateObject) entry.getValue());
                extraList.add((LocateObject) entry.getKey());
            }

keySet(), 모든 키를 set객체에 담아 리턴

values(), 저장된 모든 값을 배열에 담아 리턴

isEmpty(), 배열이 비어있는지 확인

size(), 키 값의 개수를 리턴


*제네릭 클래스는 기본 타입을 파라미터로 사용불가

따라서 래퍼 클래스(Integer, Byte, Short, Long, Character, Float, Double, Boolean)를 사용해야 함

ArrayList array = new ArrayList<>();
		array.add(40); //auto boxing, int 기본자료형을 Integer라는 참조객체(래퍼클래스) 박스 안에 담음
		int intType = array.get(0); //unboxing, Integer 참조객체를 다시 int 기본자료형으로 박스에서 꺼내옴 





반응형

'학습 log (이론) > java' 카테고리의 다른 글

'클래스' Java #5  (0) 2017.03.24
'전위(++i) 후위(i++) 증감연산자' 필수상식  (0) 2016.12.23
'java api' 기초 #1  (0) 2016.11.27
'핸들러' 스레드 통신을 위한  (0) 2016.11.13
'Math' 수학관련 함수  (0) 2016.10.16