php實(shí)現(xiàn)hashmap的方法:使用【construct()】構(gòu)造函數(shù)實(shí)現(xiàn),代碼為【Class HashMap{var $H_table;public function __construct(){$this->H_table = a}】。
創(chuàng)新互聯(lián)公司堅(jiān)持“要么做到,要么別承諾”的工作理念,服務(wù)領(lǐng)域包括:網(wǎng)站制作、成都做網(wǎng)站、企業(yè)官網(wǎng)、英文網(wǎng)站、手機(jī)端網(wǎng)站、網(wǎng)站推廣等服務(wù),滿足客戶于互聯(lián)網(wǎng)時(shí)代的安鄉(xiāng)網(wǎng)站設(shè)計(jì)、移動(dòng)媒體設(shè)計(jì)的需求,幫助企業(yè)找到有效的互聯(lián)網(wǎng)解決方案。努力成為您成熟可靠的網(wǎng)絡(luò)建設(shè)合作伙伴!
php實(shí)現(xiàn)hashmap的方法:
主要方法參照J(rèn)AVA的HASHMAP實(shí)現(xiàn)的
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);
}
}想了解更多編程學(xué)習(xí),敬請(qǐng)關(guān)注php培訓(xùn)欄目!
網(wǎng)頁(yè)名稱:php如何實(shí)現(xiàn)hashmap
轉(zhuǎn)載注明:http://www.chinadenli.net/article48/cggsep.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供企業(yè)建站、標(biāo)簽優(yōu)化、網(wǎng)站收錄、建站公司、網(wǎng)站營(yíng)銷、關(guān)鍵詞優(yōu)化
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容