【问题标题】:converting an element of an array to a separate String将数组的元素转换为单独的字符串
【发布时间】:2017-01-29 14:06:24
【问题描述】:

所以我遇到了无法将数组元素转换为字符串的问题

我有一个这样的字符串

var description:[String] =["blue","yellow","red"]

我想将数组的一个元素赋予另一个变量,该变量由另一个像这样的整数选择

var pick:[Int] = 2 var chosen:[String] = description[pick]

它说不能将类型'String'的值分配给类型'[String]'并修复它xcode建议这样做

var chosen:[String] = [description[pick]]

现在,如果我想将此变量转换为另一个变量或将其提供给函数或任何它会说的无法将类型“String”的值分配给类型“[[String]]”,请帮助。

【问题讨论】:

  • 是否需要将变量选为数组?否则你可以: var selected: String = description[pick]
  • 不,你是对的,谢谢。
  • 我将其作为答案发布,请将其标记为已回答。

标签: arrays swift string casting swift3


【解决方案1】:

你在这里变得很困惑......

首先...

var array = ["red", "yellow"]

是一个字符串数组。不要称之为描述。称呼事物的本来面目。

第二...

var pick: [Int]

正在声明一个数组。设置它= 2 没有意义。

将最后一行更改为...

var chosen: String = array[pick]

在上面的行中使用[String] 告诉系统您正在获取一个字符串数组。你不是。你在这里得到一个字符串。

【讨论】:

  • 我只是在做一个例子,比如做一个像胡萝卜之类的整数,但是谢谢我选择一个数组而不是字符串是错误的,无论如何,mago 帮助我意识到了这一点。
  • @N9va 好的。我仍然不知道你想做什么。您的代码存在更多问题,而不仅仅是字符串数组。
  • 好吧,它在一个类中,这是一个具有几个特征的对象,我在它们之间进行选择并使用 int pick 和 int pick 来创建不同的实体,但实际上没有必要在这里全部输入所以我只介绍了让我感到困惑的一点。
【解决方案2】:

选择作为数组的变量是必需的吗? 否则你可以:

var chosen: String = description[pick]

【讨论】:

    猜你喜欢
    • 2017-08-25
    • 1970-01-01
    • 1970-01-01
    • 2019-02-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多