HashMap类
来源:互联网 发布:ubuntu汉化不完整 编辑:程序博客网 时间:2024/05/22 00:45
package com.klstudio.data.map{
import flash.utils.Dictionary;
import com.klstudio.data.IMap;
public class HashMap implements IMap{
private var _keys:Array = null;
private var props:Dictionary = null;
public function HashMap(){
this.clear();
}
public function clear():void{
this.props = new Dictionary();
this._keys = new Array();
}
public function containsKey(key:Object):Boolean{
return this.props[key] != null;
}
public function containsValue(value:Object):Boolean{
var result:Boolean = false;
var len:uint = this.size();
if(len > 0){
for(var i:uint = 0 ; i < len ; i++){
if(this.props[this._keys[i]] == value) return true;
}
}
}
public function get(key:Object):Object{
return this.props[key];
}
public function put(key:Object,value:Object):Object{
var result:Object = null;
if(this.containsKey(key)){
result = this.get(key);
this.props[key] = value;
}else{
this.props[key] = value;
this._keys.push(key);
}
return result;
}
public function remove(key:Object):Object{
var result:Object = null;
if(this.containsKey(key)){
delete this.props[key];
var index:int = this._keys.indexOf(key);
if(index > -1){
this._keys.splice(index,1);
}
}
return result;
}
public function putAll(map:IMap):void{
this.clear();
var len:uint = map.size();
if(len > 0){
var arr:Array = map.keys;
for(var i:uint=0;i<len;i++){
this.put(arr[i],map.get(arr[i]));
}
}
}
public function size():uint{
return this._keys.length;
}
public function isEmpty():Boolean{
return this.size < 1;
}
public function values():Array{
var result:Array = new Array();
var len:uint = this.size();
if(len > 0){
for(var i:uint = 0;i<len;i++){
result.push(this.props[this._keys[i]]);
}
}
return result;
}
public function keys():Array{
return this._keys;
}
}
}
import flash.utils.Dictionary;
import com.klstudio.data.IMap;
public class HashMap implements IMap{
private var _keys:Array = null;
private var props:Dictionary = null;
public function HashMap(){
this.clear();
}
public function clear():void{
this.props = new Dictionary();
this._keys = new Array();
}
public function containsKey(key:Object):Boolean{
return this.props[key] != null;
}
public function containsValue(value:Object):Boolean{
var result:Boolean = false;
var len:uint = this.size();
if(len > 0){
for(var i:uint = 0 ; i < len ; i++){
if(this.props[this._keys[i]] == value) return true;
}
}
}
public function get(key:Object):Object{
return this.props[key];
}
public function put(key:Object,value:Object):Object{
var result:Object = null;
if(this.containsKey(key)){
result = this.get(key);
this.props[key] = value;
}else{
this.props[key] = value;
this._keys.push(key);
}
return result;
}
public function remove(key:Object):Object{
var result:Object = null;
if(this.containsKey(key)){
delete this.props[key];
var index:int = this._keys.indexOf(key);
if(index > -1){
this._keys.splice(index,1);
}
}
return result;
}
public function putAll(map:IMap):void{
this.clear();
var len:uint = map.size();
if(len > 0){
var arr:Array = map.keys;
for(var i:uint=0;i<len;i++){
this.put(arr[i],map.get(arr[i]));
}
}
}
public function size():uint{
return this._keys.length;
}
public function isEmpty():Boolean{
return this.size < 1;
}
public function values():Array{
var result:Array = new Array();
var len:uint = this.size();
if(len > 0){
for(var i:uint = 0;i<len;i++){
result.push(this.props[this._keys[i]]);
}
}
return result;
}
public function keys():Array{
return this._keys;
}
}
}
- HashMap类
- HashMap类
- HashMap类
- HashMap类
- HashMap类
- HashMap类
- HashMap类
- Hashtable 类 || HashMap类
- javascript模拟HashMap类
- Hashtable和HashMap类
- java HashMap类分析
- Java HashMap类
- java(14) - HashMap类
- HashMap封装类CaseInsensitiveHashMap
- 【Java源码】HashMap类
- HashMap类的理解
- HashMap类用法
- HashMap类源码解析
- C++------二进制文件的操作
- 2012.6.11 加载xml到treeView 上
- StringUtil类
- 学习笔记
- c++点滴
- HashMap类
- 17周任务一 score 二进制文件
- Weblogic错误
- 第十七周C++【报告一】学生成绩处理:保存为二进制文件
- mjpeg stream 和FFmpeg视频图像读取分析
- 学习笔记
- shell每日更新(5)
- 只为更简单
- GNU Make 使用手册(中译版)