Map : HashMap, TreeMap, HashTable(HashMap Legacy - 해쉬맵이 거의 대체함.), Properties(XML, JSON) TreeMap - 이진트리- 검색용이- Key와 Value로 데이터를 다루면서 (Key의 범위) 검색을 자주해야 하는 경우. TreeMap map = new TreeMap(); map.put("one", "하나");map.put("two", "둘");map.put("three", "셋");map.put("four", "넷");map.put("five", "다섯"); System.out.println(map); {five=다섯, four=넷, one=하나, three=셋, two=둘}System.out.println(map.get("two")); 둘S..
Set 계열 컬렉션- 순서가 없는 배열- 첨자가 업슴- 중복값을 가질 수 없다.HashSet - Set인터페이스 구현한 컬렉션- 순서는 중요하지 않고 의미를 가지지 않는다.- 같은 set 인터페이스 구현컬렉션 내에 중복값을 허용하지 않는다. HashSet 예제 1Set set = new HashSet(); 요소 추가.set.add("하나");set.add("둘");set.add("셋");set.add("넷");set.add("다섯"); System.out.println(set.add("하나")); // 무시 혹은 덮어쓰기...System.out.println(set.size()); //set 사이즈 모든 요소 출력 -> Set은 순서가 중요하지 않은 집합(***)System.out.println(set...
Iterator - 컬렉션 프레임워크에서 저장된 요소를 읽어오는 방법을 표준화하기 위한 역할(인터페이스)- Collection의 하위 컬렉션들이 소유 -> Iterator 타입의 객체를 반환하는 메소드를 이미 구현- List, Set계열에 구현(Map은 없음)- 주로 읽기 전용으로 사용한다. Iterator의 주요멤버1. boolean hasNext()2. T next()3. remove() ArrayList list = new ArrayList();list.add("사과");list.add("바나나");list.add("포도");list.add("파인애플");list.add("복숭아"); List에 데이터를 담고 반복을 돌리는 방법? 1. for 문for( int i =0; i Map계열의 전체 키Se..
Array 클래스 - 개발자가 생성하는 모든 배열의 부모클래스가 된다.객체 멤버 : nums.XXX : clone(), length정적 멤버 : Array.XXX : 주로 변환. 네트워크 작업.유틸 멤버 : Arrays.XXX : 배열 관련 여러가지 제공(컬렉션처럼) ex)int[] nums = { 100, 200, 300, 400, 500, 600 };String[] names = { "홍길동", "길라임", "최강치", "하하하", "아무개" }; // 덤프기능System.out.println(nums.toString()); //[I@15db9742System.out.println(names.toString()); //[Ljava.lang.String;@6d06d69cSystem.out.println..
List 계열 컬렉션- 선형구조로 이루어진 컬렉션 구조(순서에 의미가 있음)- ArrayList- LinkedList- Vector ArrayList https://sas-study.tistory.com/73 = 0; i--) {aList.remove(i);}end = System.currentTimeMillis();System.out.printf("작업 소요시간 : %ds\n", end - begin);begin = System.currentTimeMillis();// 직업for (int i = lList.size()-1; i >= 0; i--) {lList.remove(i);}end = System.currentTimeMillis();System.out.printf("작업 소요시간 : %ds\n", ..
컬렉션의 종류와 인터페이스이전 컬렉션1. ArrayList : 순차배열2. HashMap : 연관배열3. Stack : 스택배열4. Queue : 큐배열.- 자바는 모든 컬렉션이 특정 인터페이스를 구현한다. 1. Collection 인터페이스 - List 와 Set의 부모 역할 2. List 인터페이스 - 순서가 있는 데이터 집합 - 방번호가 있다. 첨자. 인덱스. -> 방번호를 이용하여 요소 접근. - 데이터 중복을 허용한다. ex) ArrayList , Stack , Queue, LinkedList, Vector 3. Set 인터페이스 - 순서가 없는 데이터 집합 - 방번호가 없다(첨자가 없다.) - 데이터 중복을 허용 안한다.************** - 순서가 중요하지 않은 데이터 집합. ex) ..
Stack, Queue Stack 스택- 자료구조 중 하나- 후입선출- LIFO( Last In First Out ) 0. 객체 생성Stack stack = new Stack(); 1. 요소삽입stack.push("빨강");stack.push("파랑");stack.push("노랑"); 2. 요소 제거- 값 반환과 동시에 요소를 제거- 반환은 가장 나중에 넣은 "노랑" 부터...System.out.println(stack.pop()); //노랑System.out.println(stack.size()); // 2System.out.println(stack.pop()); // 파랑System.out.println(stack.size()); // 1System.out.println(stack.pop()); //..
ArrayList와 HashMap의 비교 1. ArrayList - 요소에 대한 접근 : index사용 - 요소에 순서가 존재 - 첨자 : 정수사용.(0부터 시작, Zero-based Index) - 스칼라 배열(Scalar Array) (HashMap과의 비교) : 방들을 일괄 접근하기 용이(***)- for문 : 요소간의 구분이 쉽지 않다.(3번째 방? 27번째 방?) 2. HashMap - 요소 접근 -> 키(key)사용 - 키 : 숫자, 문자, 문자열(***이것만쓴다거의***) 등... - 방번호(인덱스) X,- 요소에 순서도 없음. -연관 배열, 사전구조 -Key, Value (ArrayList와의 비교) : 일괄 접근이 불리(거의 사용 안함)- for문과 잘 연동 안함- 요소 하나하나를 직접 ..