创建几个1到1000之间的随机整数
首先创建一个随机数序列。只需执行一次即可。
然后通过从序列中取下一个数字来创建新的随机数。根据需要重复此过程。
aRandomSeries := Random new .
"Seed a new series of random numbers"
aRandomInt := aRandomSeries newInt: 1000 .
"generate a random integer between 0 and 1000"
anotherRandomInt := aRandomSeries newInt: 1000 .
"generate another random integer between 0 and 1000"
逻辑运算
aBoolean
可以响应 and:
和 or:
。它们都需要 块参数。
以下是它们的工作原理。
and: alternativeBlock
如果接收器为真,则回答 alternativeBlock 的值;否则不评估 alternativeBlock 并回答 false。
or: alternativeBlock
如果接收器为假,则回答 alternativeBlock 的值;否则不评估 alternativeBlock 并回答 true。
例如:
( 3 > 2 ) or: [ 3 < 4 ] ifTrue: [ ]
aBoolean and: [ anotherBoolean ] ifFalse: [ ]
然而,Squeak 和 Pharo Smalltalks 都可以接受括号 ( )
中的参数。
Dolphin Smalltalk 则不行,并严格要求使用标准的 Smalltalk 语法来传递块参数。
其他相关方法:
&
是一个不需要方括号(即块)参数的AND运算符
|
是一个不需要方括号(即块)参数的OR运算符
&
和 |
可以在 Amber、Cuis、Gnu、Pharo、Squeak、VisualAge 和 VisualWorks Smalltalks 中使用。
Squeak Smalltalk 还提供了:
and:and: }
and:and:and: }
这些接受多个块参数
and:and:and:and }
or:or: }
or:or:or: }
这些接受多个块参数
or:or:or:or: }