List 계열 주요 메서드 ArrayList 실제 배열을 기반으로 구현되어 있지만, 기존의 배열의 불편함만 없앤 컬렉션 List의 후손으로 초기 저장용량은 10으로 자동 설정 / 따로 지정 가능 저장 용량을 초과한 객체들이 들어오면 자동으로 증가 / 고정도 가능 동기화(Synchronized)를 제공하지 않음 → 성능상 좋아짐! (둘다 상속 받아서 쓰면 됨) 1.Comparable 객체에 상속받아서 compareTo() 메소드를 오버라이딩 → 한개의 정렬만 가능 2.Comparator Comparator를 상속받아 compare()메소드를 오버라이딩 → 여러 개의 정렬 가능 Alt + shift + S로 간단하게 Member 클래스 생성 package com.multi.ex02.collections_li..
List나 Map에 비해 문법이 까다롭고 어려운 편 Set계열 주요 메서드 1. HashSet Hash를 사용하여 속도가 가장빠름 단, 중복 저장을 하지 못함 HashMap을 더 많이 사용함 2.LinkedHashSet HashSet과 비슷하지만 Set에 순서를 추가해 유지함 3.Treeset 정렬을 유지하며 Set중 가장 많이 씀 반복자 패턴을 사용하기 위한 인터페이스 (잘 안씀) 1.Enumeration : Iterator 구버전 2.Iterator 3.ListIterator : Iterator를 상속받아 양방향 특징 List때 사용한 Member 클래스를 그대로 사용해 테스트 package com.multi.ex03.collections_set; import java.util.ArrayList; i..
배열의 문제점 1. 한번 크기를 지정하면 변경할수 없음 - 공간 크기가 부족하면 에러 발생 -> 할당시 넉넉한 크기로 할당하게 됨 (메모리 낭비) 2. 기록된 데이터에 대한 중간위치 추가, 삭제가 불편함 - 추가 삭제시 데이터를 뒤로 밀어내고 추가해야함 (알고리즘이 복잡해짐) 3. 한 타입의 데이터만 저장가능 컬렉션의 장점 1. 저장하는 크기의 제약이 없음 2. 추가, 삭제, 정렬 등의 기능 처리가 간단하게 해결됨 - 자료를 구조적으로 처리하는 자료구조가 내장, 알고리즘 필요 X (코드 생산성 향상) 3. 여러 타입의 데이터 저장가능 주요 인터페이스 List, Set, Map 계열 List 계열 : 순서를 유지하고 저장, 중복저장 가능 Set 계열 : 순서를 유지하지 않고 저장, 중복저장 불가능 Map ..