요즘 어디가나 경품이 핫하죠? 이터레이터 패턴을 응용하여 경품 추첨 프로그램을 만들어 보겠습니다. 이 프로그램은 경품추첨 명단과 경품의 리스트를 받아 추첨하는 과정을 수행하는 프로그램입니다. 추첨 기능은 두가지여서 경품에 따라 차례로 명단에서 이름을 뽑는 방식과 명단에 있는 사람 중에서 랜덤한 순서로 한명씩 경품을 추첨하는 형태입니다. 먼저 전체적인 프로그램의 실행의 전체구조를 살펴보겠습니다. 명단을 가질 mList와 입력을 받을 스캐너를 만들고 명단을 읽어들인 후 전체 출력하고 나서 추첨부를 호출합니다. public class EventMgr { Scanner scan = new Scanner(System.in); ArrayList mList = new ArrayList(); void run() { r..
프로그래밍 언어에서 이터레이터는 미리 정해진 값의 집합에 대해 값을 하나씩 돌려주는 기능(하나씩 끝까지 반복하게 해주는 기능)을 제공하는 객체입니다. 언어마다 이터레이터를 사용하는 방식이 다른데 파이썬은 이터레이터를 언어의 중요한 개념으로 사용하고 있습니다. 순차나열의 구조를 가지는 반복부를 분석해보면 (1) 반복되는 대상 집합과 (2) 반복을 위해 값을 하나씩 꺼내서 주는 부분(다음 값이 무엇인지, 언제 끝낼지 결정해야 함), 그리고 (3) 그것을 이용해서 뭔가를 처리하는 코드 부분으로 구성되어 있습니다. 이 때 값을 하나씩 제공하는 부분과 그 값을 사용하는 부분이 분리되게 코드를 구성한다면 가독성을 올리고 재사용성이 훨씬 높아지는 코드를 작성할 수 있습니다. 이터레이터는 다음 값을 제공하는 기능과 끝..
- Total
- Today
- Yesterday
- zip
- 이터레이터
- 스트링 +
- 동적바인딩
- Lazy evaluation
- 스트링
- ToString
- C++ 클래스
- python exercise
- TypeError
- 지연계산
- 이터러블
- sort key
- typedef
- format
- Camel Style
- 자바regex
- indexof
- Iterator
- max
- rust
- 패턴
- contentEquals
- follow
- python example
- CompareTo
- comparable
- contains
- 콜렉션
- APPEND
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |