the-swift-programming-language-in-chinese
the-swift-programming-language-in-chinese copied to clipboard
Swift方法那一章的level调整为关卡是否会更好?
只是自己本人的一点拙见,仅供参考: 在看这个章节的时候带着“等级”的理解,多少有点问题,例如下面这段代码:
@discardableResult
mutating func advance(to level: Int) -> Bool {
if LevelTracker.isUnlocked(level) {
currentLevel = level // 等级回调??
return true
} else {
return false
}
}
其中的currentLevel = level
告诉我们调整当前的等级,如果我尝试使用更低的等级来使用该方法,currentLevel是否会跟着回调,因此百思不得其解。
如果调整为关卡,可以以存档的方式来理解。当玩家解锁的最高的关卡等级highestUnlockedLevel
为5,那么advance填入参数6则无法进入第六关,而小于等于5的关卡可以进入,那么则调整当前进入的存档关卡 **currentLevel(当前关卡)**为小于等于5的关卡。