2022/04/21 2

반복자(Iterator) 패턴이란?

1. 반복자 패턴이란? 의도 내부 표현부를 노출하지 않고 어떤 집합 객체에 속한 원소들을 순차적으로 접근할 수 있는 방법을 제공 집합 객체를 순회하는 클라이언트 코드를 변경하지 않고 다양한 순회 방법을 제공할 수 있다. 사용 시기 객체 내부 표현 방식을 모르고도 집합 객체의 각 원소들에 접근하고 싶을 때 집합 객체를 순회하는 다양한 방법을 지원하고 싶을 때 서로 다른 집합 객체 구조에 대해서도 동일한 방법으로 순회하고 싶을 때 구조 Iterator : 원소를 접근하고 순회하는 데 필요한 인터페이스를 제공 ConcreteIterator : Iterator에 정의된 인터페이스를 구현하는 클래스 Aggregate : Iterator 객체를 생성하는 인터페이스를 정의 ConcreteAggregate : 해당하는..

[Java] Comparable, Comparator, 정렬 방법

필자는 무언가 정렬을 잘 못하는것을 최근 깨달았다. 그래서 이번에는 자바에서 정렬을 하는 방법을 학습하려고 한다. 이게 이런게 참 기초이지만 모르는다는것에 부끄러움을 사알짝 느끼면서 오늘도 시자악~ 1. Comparable oracle에서 Comparable에 대한 설명을 가져왔다. 이 인터페이스는 그것을 구현하는 각 클래스의 객체에 total ordering을 수행한다. 이 ordering은 클래스의 natural ordering으로 여기지고, 클래스의 compareTo 메소드는 natural 비교 메소드로 여겨진다. 이 인터페이스를 구현하는 객체의 리스트는 자동적으로 Collections.sort(그리고 Arrays.sort)로 정렬될 수 있다. 이 인터페이스를 구현하는 객체는 정렬된 맵에서 키로 이..