Swift 卡在甲板上
我正在开发一个扑克应用程序。我有两个问题 1) 刚开始在DeckOfCards课程上学习如何处理甲板。我在一个for循环中不断得到一个错误(“预期声明”)。它在操场上起作用,但在项目中不起作用(尽管不是作为一个班级)。我该如何解决这个问题 2) 可以用这种方式表示卡片(数组中有两个字符串)吗 进口基金会Swift 卡在甲板上,swift,Swift,我正在开发一个扑克应用程序。我有两个问题 1) 刚开始在DeckOfCards课程上学习如何处理甲板。我在一个for循环中不断得到一个错误(“预期声明”)。它在操场上起作用,但在项目中不起作用(尽管不是作为一个班级)。我该如何解决这个问题 2) 可以用这种方式表示卡片(数组中有两个字符串)吗 进口基金会 class DeckOfCards { var newDeck = ["A♠️", "2♠️", "3♠️", "4♠️", "5♠️",...."K♠️",
class DeckOfCards {
var newDeck = ["A♠️", "2♠️", "3♠️", "4♠️", "5♠️",...."K♠️",
"A♥️", "2♥️", "3♥️", "4♥️", "5♥️",...."K♥️",
"A♣️", "2♣️", "3♣️", "4♣️", "5♣️",...."K♣️",
"A♦️", "2♦️", "3♦️", "4♦️", "5♦️",...."K♦️"]
var deck = [String]()
var randomNumber = 0
init() {
deck = []
}
for _ in 1...52 { // ERROR ON THIS LINE ("Expected Declaration")
randomNumber = Int(arc4random_uniform(UInt32(newDeck.count)))
deck.append(newDeck.removeAtIndex(randomNumber))
}
}
这是因为在类定义中不能让代码像这样挂起。您需要将其放入
func
中。e、 g
func shuffleDeck() -> [String] {
var deck = [String]()
for _ in 1...52 {
randomNumber = Int(arc4random_uniform(UInt32(newDeck.count)))
deck.append(newDeck.removeAtIndex(randomNumber))
}
return deck
}
要回答问题的第二部分,最好使用
enum
来表示卡片。这里有一个很好的例子:根本没有意识到这个错误。我把这门课当作一个大函数来对待!我还有很多东西要学,哈哈。谢谢你!!别担心。犯错误总是学习一门新语言的一部分。干杯