【发布时间】:2019-04-29 13:43:32
【问题描述】:
我有一句话。起初,没有字母,只有?。例如,单词“town”会显示为“????”。 然后用户猜测字母,如果他确定它,它会从 ?到实际的字母。 例如,如果他猜 t,它看起来像这样 't???'。
问题是,我不知道如何遍历字符串并将其划分为字符。如果我以某种方式做到了,我无法在新字符串中更改它。
应该看起来像这样。
word do: [ :c |
c = guessedChar
ifTrue[mask := mask, guessedChar]
ifFalse[mask := mask, '?']
].
mask 被初始化为 nil,因为word 的长度可以改变并且word 是String。
guessedChar 连接到 inputField,但它一次只包含一个字符。
最好是为每个guessedChar 执行一次,还是收集所有猜测的字符并每次都运行它?
【问题讨论】:
标签: smalltalk visualworks