GnuSmalltalkUsersGuide:BaseChapter 008

From 흡혈양파의 번역工房
Jump to navigation Jump to search
Bag

Bag

네임스페이스 Smalltalk에 정의됨

슈퍼클래스: Collection

범주: 컬렉션-비정렬


나의 인스턴스들은 정렬되지 않은 객체의 컬렉션이다. 메모리가 있는 집합으로 생각할 수 있겠다; 그말인즉슨, 동일한 객체가 나에게 두 번 추가되면 나는 요소가 두 번 보관되었다고 보고할 것이다.


Bag 클래스: 기본

new

수신자의 새 인스턴스를 응답하라.

new: size

크기가 다른 객체들을 위한 공간이 있는 수신자의 새 인스턴스를 응답하라.


Bag: 추가하기

add: newObject

수신자에게 newObject의 발생을 추가하라. newObject를 응답하라. newObject가 nil일 경우 실패한다.

add: newObject withOccurrences: anInteger

anInteger>0인 경우 newObject의 anInteger 발생을 수신자에게 추가하라. anInteger<0인 경우 제거하라. newObject를 응답하라. newObject가 nil인 경우 실패한다.


Bag: 컬렉션 요소 열거하기

asSet

수신자의 요소로 된 집합을 응답하라.

do: aBlock

컬렉션의 모든 멤버에 대해 블록을 평가하라.


Bag: 항목 추출하기

sortedByCount

내림차순(decreasing count)으로 정렬된 요소들이 있는 count의 컬렉션을 응답하라.


Bag: 인쇄하기

printOn: aStream

수신자의 표현을 aStream에 놓아라.


Bag: 제거하기

remove: oldObject ifAbsent: anExceptionBlock

컬렉션으로부터 oldObject를 제거하여 리턴하라. 찾을 수 없다면 anExceptionBlock을 평가한 결과를 대신 응답하라.


Bag: 보관하기

storeOn: aStream

수신자로 컴파일하는 스몰토크 코드 일부를 aStream에 놓아라.


Bag: 컬렉션 검사하기

= aBag

수신자와 aBag가 동일한 객체를 포함하는지 여부를 응답하라.

hash

수신자에 대한 해시값을 응답하라.

includes: anObject

우리가 anObject를 포함하는지 여부를 응답하라.

occurrencesOf: anObject

수신자에서 발견되는 anObject의 발생 횟수를 응답하라.

size

수신자에서 발견되는 총 객체 개수를 응답하라.


Notes