【问题标题】:How do I append an int value into a string array in Swift?如何在 Swift 中将 int 值附加到字符串数组中?
【发布时间】:2015-03-23 04:11:48
【问题描述】:

我现在正在学习 Swift(具有基本的编程知识),并且我正在通过 for 循环制作一个包含 52 张卡片的字符串数组,但我不确定如何使用int 和字符串值。

我知道使用 \(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"
    }
}

【问题讨论】:

    标签: ios arrays swift


    【解决方案1】:

    您需要将 (i) 放在引号中,以便将其转换为字符串。

    deck.append("\(i)" + " of " + s) 
    

    你也可以这样做:

    var value = String(i)
    deck.append(value + " of " + s) 
    

    【讨论】:

    • 谢谢!我很高兴这是一件简单的事情。现在到新的错误... :)
    • 最简单的解决方案就是将它们全部放在一个字符串中:"\(i) of \(s)" 通常将要评估的表达式放入这样的字符串中称为“字符串插值”@Dodgepodge,您可能想要查看 Swift 手册。
    • 你是对的,@DavidBerry - 不知怎的,我忘记了,尽管我在这个 sn-p 下的其他代码中的某个时候这样做了。我会尽量阅读 Swift 手册,但作为初学者,我觉得它有点太难了。不过我会继续阅读,谢谢。
    猜你喜欢
    • 2016-03-02
    • 1970-01-01
    • 2020-11-18
    • 1970-01-01
    • 1970-01-01
    • 2014-11-19
    • 1970-01-01
    • 2019-11-10
    • 2010-09-09
    相关资源
    最近更新 更多