tebru / php-collections
基于Java集合框架的PHP数据结构
v0.3.2
2017-01-15 18:14 UTC
Requires
- php: >= 7.1
Requires (Dev)
- phpunit/phpunit: ^5.0
This package is auto-updated.
Last update: 2024-09-10 01:16:41 UTC
README
此库将Java集合框架移植到PHP。
安装
composer require tebru/php-collections
集合
集合提供数据存储,其中顺序和随机访问不重要。所有集合实现CollectionInterface
。
AbstractCollection
这是一个实现了其方法的抽象类。它将决定使用什么底层数据结构的决策推迟到具体实现。
Bag
这是一个实现CollectionInterface
的类,它继承自AbstractCollection
并使用数组作为数据存储。
AbstractList
这继承自AbstractCollection
并实现ListInterface
。列表为集合添加了随机访问功能。它允许在特定索引处获取/设置/删除元素。默认情况下,它们将元素添加到列表末尾。
ArrayList
这是一个实现CollectionInterface
和ListInterface
的类。它继承自AbstractList
并使用数组作为数据存储。
AbstractSet
这继承自AbstractCollection
并实现SetInterface
。集合与通用集合的不同之处在于只允许每个元素存在一个实例。
HashSet
这是一个实现CollectionInterface
和SetInterface
的类,它继承自AbstractSet
。它使用HashMap
作为数据存储。
映射
映射提供数据存储,其中顺序不重要,但通过键获取值的能力很重要。所有映射实现MapInterface
。
AbstractMap
这实现了MapInterface
并实现任何不需要了解特定数据存储的方法。
HashMap
这是一个实现MapInterface
并继承自AbstractMap
的类。它使用数组作为数据存储。