询问对象是否是布尔值的最佳方法是什么?
根据要求,原因如下:
我有一个打印东西,任何东西的方法,当这个东西是布尔值时,我希望它打印"是"或"否"而不是真或假.我是这样做的,但它看起来像是对我的黑客攻击:
[anObject
ifTrue: [ 'Yes' ]
ifFalse: [ 'No' ] ]
on: Error
do: [ anObject printString ]
Run Code Online (Sandbox Code Playgroud)
添加您自己的printString定义:
Object >> #bernatPrintString
^self printString
True >> #bernatPrintString
^'Yes'
False >> #bernatPrintString
^'No'
Run Code Online (Sandbox Code Playgroud)