gpt4 book ai didi

ios - 创建自定义对象列表 F#

转载 作者:搜寻专家 更新时间:2023-11-01 06:14:29 25 4
gpt4 key购买 nike

我有一个自定义对象声明如下:

class Listing : NSObject {
var from : Date?
var to : Date?
var pricePerNight : Int?
....
}

然后我像这样创建这些对象的空列表:

var myListings = [Listing]()

我现在正尝试使用 F# 创建相同的功能。我定义了一个接口(interface)如下:

type Listing = 

abstract member fromDate : NSDate with get,set
abstract member toDate : NSDate with get,set
abstract member pricePerNight : int with get,set
...

然后我这样做了:

    let listings : List<Listing> = List.Empty

我的理解对吗?

最佳答案

F# list(与 Swift/C# List 不同)是一个不可变的单向链表。作为 F# 数据结构,它更加惯用,在语言中有更好的支持(模式匹配等),并且由于它是不可变的,您可以安全地将其公开或在不同线程之间共享。但是,它比许多其他数据结构慢。

Swift/C# List 的 F# 等效项(事实上,它与 C# List 完全相同)称为 ResizeArray,这是一个自动可变大小的可变数组。如果您需要您的集合是可变的,它可能就是您想要的数据结构。

两者都可以是正确的选择,具体取决于您想要做什么。

关于ios - 创建自定义对象列表 F#,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48024291/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com