我现在正在学习Swift(使用基本的编程技巧),并且我通过for循环制作一个包含52张牌的String数组,但我不知道怎么做附加一个带有int和string值的值。
我知道使用\(int)
将int转换为字符串,但在附加到数组时它似乎不起作用。我的代码,包括错误消息如下:
var suits = ["Spades", "Hearts", "Clubs", "Diamonds"]
var deck:[String] = []
for s in suits
{
deck.append("Ace of " + s)
deck.append("King of " + s)
deck.append("Queen of " + s)
deck.append("Jack of " + s)
for (var i = 2; i < 11; ++i)
{
deck.append(\(i) + " of " + s)
//error message: "Expected ',' separator"
//error message: "Invalid character in source file"
}
}
答案 0 :(得分:3)
您需要在引号中加上(i)才能将其转换为字符串。
deck.append("\(i)" + " of " + s)
你也可以这样做:
var value = String(i)
deck.append(value + " of " + s)