버글버글

Java 수업 기록 (20) Collection Framework - Iterator, Collections 본문

java/java 수업 기록

Java 수업 기록 (20) Collection Framework - Iterator, Collections

Bugle 2022. 8. 12. 00:00
반응형

▶ Iterator(반복자) 인터페이스 

1. 특징 컬렉션(interface Collection)에 등록해서 사용
2. 순회할 때 사용(for문 대용)
3. 주요 메소드
   1) hasNext() : 남아 있는 요소가 있으면 true 반환, 없으면 (false)
   2) next() : 요소를 하나 반환

4. 주로 Set에서 사용 (list는 for문 사용)

		Set<String> set = new HashSet<String>();
		
		set.add("제육");
		set.add("닭갈비");
		set.add("돈까스");
		set.add("김치찌개");
		// set를 조회할 반복자 itr		
		Iterator<String> itr = set.iterator();
		
		// haseNext() : 남아 있는 요소가 있으면
		// next()	  : 그 요소를 꺼냄
		while(itr.hasNext()) {
			String element = itr.next();
			System.out.println(element);
		}
		// 돈까스
		// 제육
		// 닭갈비
		// 김치찌개

 

▶ HashMap과 Iterator 

1. keySet() 메소드로 key만 Set에 저장한다.
2. key를 저장한 Set에 Iterator를 등록해서 사용한다.

예제)

		Map<String, Object> map = new HashMap<String, Object>();
		
		map.put("page", 1);
		map.put("column", "제목");
		map.put("query", "날씨");
		
		Set<String> keys = map.keySet();
		
		Iterator<String> itr = keys.iterator();
		
		while(itr.hasNext()) {
			String key = itr.next();
			Object value = map.get(key);
			System.out.println(key + ":" + value);
			}

 

▶ Collections 

1. 컬렉션을 대상으로 특정 연산을 수행할 수 있는 클래스

2. 모든 메소드가 클래스 메소드(static)로 되어 있음

java.util

* 주요메소드

메소드 역할
boolean addAll(Collection < ? super T > c, T... elements) 모든 elements를 컬렉션 c에 저장
int binarySearch(List < ? extendx Comparable < ? super T >> list , T key) 이진검색으로 key값을 검색
T max(Collection < ? extends T> coll) 컬렉션 coll에서 최대값 반환
T min(Collection < ? extends T> coll) 컬렉션 coll에서 최소값 반환
void reverse(List <?> list) 리스트 list를 내림차순 정렬
void sort(List <T>list) 리스트 list를 오름차순 정렬

 

 

반응형