如何迭代 Any 数组

埃利亚斯·克努森

我想知道如何遍历不同类型的对象数组。该数组如下所示:

var messages: [Any] = [SentMessage(sent_text: "Halla", date_sent: "24.des", isSent: true, sending: false), RecievedMessage(profile_image: UIImage(named: "baseline_account_box_black_18pt")!, recieved_text: "Hei hva skjer?", date_recieved: "25.des", isRecieved: true)]

我尝试像这样转换迭代器:

for i in messages{

    guard let received = ReceivedMessage(i) else{
        return
    }


}

ReceivedMessagesSentMessages都是结构体,如果需要看更多代码,就问吧。

伊利亚马尼

使用可选绑定:

guard let received = i as? ReceivedMessage

不是声明messagesas [Any]而是创建ReceivedMessageSentMessage采用通用协议,然后messages将是采用该协议的对象数组:

protocol Message {

}

struct SentMessage: Message {

}

struct ReceivedMessage: Message {

}

var messages: [Message]

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

二维数组的LINQ .Any()迭代器-[,]

来自分类Dev

JavaScript:如何迭代过滤数组?

来自分类Dev

Javascript:如何使用promise迭代数组?

来自分类Dev

如何迭代3D numpy数组

来自分类Dev

如何迭代Numpy数组的初始尺寸?

来自分类Dev

如何迭代Python数组中的几个元素?

来自分类Dev

如何使用JSTL迭代对象数组的ArrayList?

来自分类Dev

如何使用下垂迭代Swift [AnyObject]数组?

来自分类Dev

如何迭代SendGrid模板中的对象数组?

来自分类Dev

Ansible:如何通过数组迭代角色?

来自分类Dev

如何从多维数组迭代表中的数据

来自分类Dev

如何在NodeJS中迭代大型数组

来自分类Dev

如何捕获要迭代的数组的索引(JavaScript)

来自分类Dev

如何迭代Javascript中的嵌套对象数组

来自分类Dev

如何迭代指向void的指针数组

来自分类Dev

SwiftUI MVVM如何迭代并获取数组索引

来自分类Dev

如何迭代3D numpy数组

来自分类Dev

如何从某个键开始迭代多维数组?

来自分类Dev

如何迭代SendGrid模板中的对象数组?

来自分类Dev

如何迭代Python数组中的几个元素?

来自分类Dev

如何在数组迭代中等待?

来自分类Dev

如何在bash中迭代数组

来自分类Dev

如何迭代数组中的对象值?

来自分类Dev

在 Ansible 中,如何使用数组迭代 stdout?

来自分类Dev

如何迭代多个参数数组

来自分类Dev

我如何迭代这个数组?

来自分类Dev

如何在 JavaScript 中迭代数组

来自分类Dev

猫鼬,如何迭代地从数组中添加subDocs数组

来自分类Dev

如何在Java脚本中迭代数组内部的数组