模拟java 中map的功能封装一个有序的map

阅读更多

map模型:

/**
 * Project Name:psim
 * File Name:MapModel.java
 * Package Name:com.psim.bean
 * Date:2014年5月16日下午12:35:37
 * Copyright (c) 2014, [email protected] All Rights Reserved.
 *
 */

package com.psim.bean;

/**
 * ClassName:MapModel 
* Function: map模型
* Reason: TODO ADD REASON.
* Date: 2014年5月16日 下午12:35:37
* * @author Administrator * @version * @since JDK 1.6 * @see */ public class MapModel { private K key; private V value; public MapModel(K key,V value){ this.key = key; this.value = value; } public K getKey() { return key; } public void setKey(K key) { this.key = key; } public V getValue() { return value; } public void setValue(V value) { this.value = value; } }

 模拟Map的工具类,

/**
 * Project Name:psim
 * File Name:MapModelLink.java
 * Package Name:com.psim.bean
 * Date:2014年5月16日下午1:07:07
 * Copyright (c) 2014, [email protected] All Rights Reserved.
 *
*/

package com.psim.bean;

import java.util.ArrayList;
import java.util.List;

/**
 * ClassName:MapModelLink 
* Function: 自定义Map表,是有序的
* Date: 2014年5月16日 下午1:07:07
* @author Administrator * @since JDK 1.6 * @see */ public class MapModelLink { private List mapModelList = new ArrayList(); //设值 public void put(K key,V value){ mapModelList.add(new MapModel(key, value)); } //取值 public V get(K key){ return null!=this.getMapModel(key)?this.getMapModel(key).getValue():null; } //移除 public boolean remove(K key){ MapModel mapModel = this.getMapModel(key); if (null!=mapModel) { return mapModelList.remove(mapModel); }else{ return false; } } // 得到长度 public int size() { return mapModelList.size(); } //得到对应的模型 public MapModel getMapModel(K key){ if (mapModelList.size()>0) { for (MapModel mapModel : mapModelList) { if(mapModel.getKey().equals(key)){ return mapModel; } } } return null; } public List getMapModelList() { return mapModelList; } }

  

你可能感兴趣的:(模拟Map,有序Map)