gpt4 book ai didi

perl - perl 中有什么好的收集模块吗?

转载 作者:行者123 更新时间:2023-12-05 00:52:21 27 4
gpt4 key购买 nike

有人可以在 perl 中推荐一个可以用来存储对象集合的好模块吗?

或者 ARRAY 是否足以满足大多数需求?

更新:我正在寻找一个集合类,因为我希望能够从每个元素执行诸如计算集合级别属性之类的操作。

由于我需要执行很多这样的操作,我不妨编写一个可以由单个对象扩展的类。此类显然适用于数组(或可能是散列)。

最佳答案

有用于更复杂结构的集合模块,但在 Perl 中常见的风格是使用 Arrays 来表示数组、堆栈和列表。 Perl 内置了将数组用作堆栈或列表的函数:push/pop、shift/unshift、splice(在中间插入或删除)和用于迭代的 foreach 形式。

Perl 也有一个映射,称为 HashMap ,相当于 Python 中的字典 - 允许您在单个键和单个值之间建立关联。

Perl 开发人员经常组合这两种数据结构来构建他们需要的东西——需要多个值?将数组引用存储在哈希表 (Map) 的值部分。可以用类似的方式构建树 - 如果您需要唯一键,请使用多级散列映射,或者如果您不使用嵌套数组引用。

Perl 中的这两种原始集合类型没有面向对象的 api,但它们仍然是集合。

如果您查看 CPAN,您可能会发现提供其他面向对象数据结构的模块,这实际上取决于您的需要。除了 List、Stack 或 Map 之外,您是否还需要特定的数据结构?如果您询问的是特定数据结构,您可能会得到更准确的答案(例如特定模块)。

忘记提及,如果您正在寻找跨多种语言的小代码示例,PLEAC (Programming Language Examples Alike Cookbook)是一个不错的资源。

关于perl - perl 中有什么好的收集模块吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/129740/

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