У меня есть класс в Smalltalk, в котором хранится OrderedCollection объектов. Каждый объект имеет имя. Я хотел бы перебрать объекты OrderedCollection и распечатать имя каждого из этих объектов. Например, в Java я бы что-то вроде:Как распечатать данные объекта из OrderedCollection в Smalltalk
for(int i = 0; i < array.length; ++i) {
System.out.println(array[i].getName());
}
Это насколько я в Smalltalk, где «список» является УпорядоченнаяСовокупность:
1 to: list size do: [
:x | Transcript show: 'The object name:' list at: x printString; cr.
]
'list do: [: объект | Transcript show: 'Имя объекта:', имя объекта; cr] ' –
В Java, чтобы перечислить массив' foo', вы бы более компактно записывали 'for (int i: foo) {...}', который немного более точно отражает правильный способ сделать это в Smalltalk , 'foo do: [: each | ...] '. – lurker