본문 바로가기

IT개발정보/spring and java

JAVA Map, List 정의- Collection

JAVA Map, List 정의

 

1. Map

  • Key & Value의 형태로 입력
  • 키값을 입력하면 해당하는 value값을 획득
  • 수집의 순서를 기억하지 않함
  • 동일한 데이터를 Key값으로 사용 할 수 없다.(동일한 Key값으로 다른 데이터의 입력 불가능)
  • 다건의 데이터에서 원하는 특정 데이터에 접근(검색)할 때 유리한 방식

 

HashMap<Key형, Value형> mapName = new HashMap<Key형, Value형>();

ex) HashMap<Stirng, Integet> BoardList = new HashMap<>();

뒤에 key, value 는 생략가능

2. List

  • 리스트(List)는 컬렉션(Collection) 인터페이스 중 하나이다.
  • 리스트(List)는 크기 조절이 가능하다.
  • 리스트(List)는 초기 크기를 지정하지 않아도 된다.
  • 리스트(List)에 삭제는 공간을 지우는 것이다..

사용법

  1. 저장 : add(값) 
    위의 선언 변수명.add(값)을 하게 되면 해당 List에 값이 저장됨.
    저장된 값을 순차적으로 저장되며 이는 Index화 됨.

  2. 읽기 : get(숫자)
    변수명.get(0) 을 하게 되면 0에 해당하는 index위치의 list 값을 출력.

  3. 삭제 : remove(숫자)
    변수명.remove(0) 을 하게 되면 0에 해당하는 index위치의 list 값을 삭제.
List<자료형> 리스트 명 = new ArrayList()<자료형(생략가능)>();
위와 같이 선언이 가능하며 제네릭은 사용하지 않으면 모든 데이터를 저장할 수 있음.

List<자료형> 리스트 명 = new ArrayList<String>();
제네릭을 활용할 경우 해당되는 타입의 값만 저장 가능

		board.add("값1");//저장
		board.add("값2");
		board.add("값3");

 

3. 자바 List<Map<String, Object>> 정렬

자바 List 안에 데이터(래퍼, String)가 아닌 객체 일때 정렬하는 방법
즉 List<String> 또는 List<Integer> 이 아닌 List<Map<String, Object>>을 정렬  

(키값이 아닌, 데이터를 이용한 정렬)

 

List<Map<String, Object>> listMap = new ArrayList<Map<String, Object>>();