ArrayList in php

2022-08-30 18:49:12

中是否存在除 以外的任何数据结构。是否可以创建数据结构,例如 ?如果有,请提供一些参考资料或某种实现方式。phparrayArrayList


答案 1

您需要了解的有关数组的所有信息都可以在文档中找到。

函数参考中列出了数组的所有可用函数

一些注意事项:

  • 数组最初是PHP中唯一的数据结构。这就是为什么他们如此灵活。它们旨在用作堆栈,队列,数组,列表,哈希表等。后来PHP引入了spl Datastructures
  • 与Java不同,PHP不是一种纯粹的OO语言。数组本身没有可以应用的内置方法。这必须通过“正常”功能来完成。
  • 数组没有固定大小。它们会自动扩展和收缩。

在下面,我试图列出最常见的ArrayList方法的PHP替代方案:


答案 2

我试图实现,这里有一些简单的代码:

class ArrayList {

private $list = array();


public function Add($obj)
{
    array_push($this->list, $obj);
}

public function Remove($key)
{
    if(array_key_exists($key, $this->list))
    {
        unset($this->list[$key]);
    }
}

public function Size()
{
    return count($this->list);
}

public function IsEmpty()
{
    return empty($this->list);
}

public function GetObj($key)
{
    if(array_key_exists($key, $this->list))
    {
        return $this->list[$key];
    }
    else
    {
        return NULL;
    }
}

public function GetKey($obj)
{
    $arrKeys = array_keys($this->list, $obj);

    if(empty($arrKeys))    
    {
        return -1;
    }
    else
    {
        return $arrKeys[0];
    }
}

}

推荐