ArrayList in php
2022-08-30 18:49:12
中是否存在除 以外的任何数据结构。是否可以创建数据结构,例如 ?如果有,请提供一些参考资料或某种实现方式。php
array
ArrayList
中是否存在除 以外的任何数据结构。是否可以创建数据结构,例如 ?如果有,请提供一些参考资料或某种实现方式。php
array
ArrayList
您需要了解的有关数组的所有信息都可以在文档中找到。
函数参考中列出了数组的所有可用函数。
一些注意事项:
在下面,我试图列出最常见的ArrayList
方法的PHP替代方案:
add(element)
基本上只是通过 附加。新值获取下一个自由数字索引(这是首选方法)。您还可以使用array_push($array,$element)。
$array[] = $element
addAll(ArrayList)
:在某种程度上array_merge($array 1,$array 2)。
合并关联数组时要小心。相同键的值将被覆盖。clone()
:由于数组不是对象,因此只需将数组分配给另一个变量即可“克隆”数组:
$a = array(1,2,3);
$b = $a;
contains(element)
: in_array($element, $array)
get(index)
:与大多数语言一样:$val = $array[index];
indexOf(element)
:array_keys($array,$element),
将您搜索的值作为第二个参数isEmpty()
: 空($array)
remove(index)
: 它的unset($array[index])
remove(value)
与值:您必须首先获取密钥(请参阅),循环访问它们的密钥并使用 .indexOf
unset
size()
: 数量($array)
我试图实现,这里有一些简单的代码:
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];
}
}
}