본문 바로가기

List

배열(Array) 구조의 이해 Array의 개념 Array는 저장해야 할 값이 많고, 그 값들의 type이 같은 유형인 경우 사용하는 자료구조이다. 따라서 하나의 Array에 각기 다른 여러 type의 value들을 담을 수 없다. Array의 값들은 index를 통해서 접근할 수 있으므로, Linked List와 달리 value의 검색과 변경의 속도가 빠르다(시간 복잡도 O(N) = 1). Array List와 같은 시간 복잡도를 가지지만 Array List는 길이가 고정되어 있지 않아 value의 추가, 삭제가 자유롭다. 하지만 Array는 primitive type으로서 object type인 List에 비해 작업의 속도가 빠르므로, Array List로 완전히 대체할 수는 없다. 실제 Array와 Array List가 자주 쓰.. 더보기
collection framework의 interface(List, Set, Map)별 주요 method 정리 공식문서에서는 method에 대해 서술할 때 타입을 일일이 설명해 주기 때문에 직관적으로 외우기 불편하다. 그래서 이곳에 내가 기억하기 편한 방식으로 정리해 두려 한다. 각 구현 클래스들에 관한 것은 시간이 된다면 다음 포스팅에서 다룰 예정이다. '이것이 자바다' 교재를 통해 공부한 내용과 개인적인 이해방식을 바탕으로 작성했으므로 틀린 내용이 있을 수 있다. List와 Set은 Collection 인터페이스를 상속하는 자식 인터페이스이고, Map은 독립(POJO) 인터페이스이다. 셋 다 java.util 패키지에 속해 있으므로, 사용하려면 인터페이스를 가져오는(import) 작업이 필요하다. List List는 index 순서대로 저장하는 방식이다. 다른 index에 같은 내용의 객체를 중복 저장할 수 .. 더보기