首页 > 后端开发 > PHP问题 > php如何实现hashmap

php如何实现hashmap

coldplay.xixi
发布: 2023-03-06 08:26:01
原创
4573 人浏览过

php实现hashmap的方法:使用【construct()】构造函数实现,代码为【Class HashMap{var $H_table;public function __construct(){$this->H_table = a}】。

php如何实现hashmap

php实现hashmap的方法:

主要方法参照JAVA的HASHMAP实现的

Class HashMap{
 var $H_table;
 
  public function __construct() {
   $this->H_table = array ();
  }
 
 public function put($key, $value) {
  if (!array_key_exists($key, $this->H_table)) {
    $this->H_table[$key] = $value;
    return null;
  } else {
    $tempValue = $this->H_table[$key];
    $this->H_table[$key] = $value;
    return $tempValue;
  }
  }
 
 
  public function get($key) {
   if (array_key_exists($key, $this->H_table))
    return $this->H_table[$key];
   else
    return null;
  }
 
 
  public function remove($key) {
   $temp_table = array ();
   if (array_key_exists($key, $this->H_table)) {
    $tempValue = $this->H_table[$key];
    while ($curValue = current($this->H_table)) {
    if (!(key($this->H_table) == $key))
     $temp_table[key($this->H_table)] = $curValue;
 
    next($this->H_table);
    }
   $this->H_table = null;
   $this->H_table = $temp_table;
    return $tempValue;
   } else
    return null;
  }
 
 
  public function keys(){
   return array_keys($this->H_table);
  }
 
  public function values(){
   return array_values($this->H_table);
  }
 
 
  public function putAll($map){
  if(!$map->isEmpty()&& $map->size()>0){
    $keys = $map->keys();
   foreach($keys as $key){
    $this->put($key,$map->get($key));
    }
   }
  }
 
 
  public function removeAll() {
   $this->H_table = null;
   $this->H_table = array ();
  }
 
  public function containsValue($value) {
    while ($curValue = current($this->H_table)) {
    if ($curValue == $value) {
     return true;
    }
    next($this->H_table);
    }
    return false;
  }
 
  public function containsKey($key) {
    if (array_key_exists($key, $this->H_table)) {
    return true;
    } else {
    return false;
    }
  }
 
  public function size() {
   return count($this->H_table);
  }
 
 
 
  public function isEmpty() {
   return (count($this->H_table) == 0);
  }
 
  public function toString() {
  print_r($this->H_table);
  }
}
登录后复制

想了解更多编程学习,敬请关注php培训栏目!

以上是php如何实现hashmap的详细内容。更多信息请关注PHP中文网其他相关文章!

相关标签:
来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板