`

模拟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, chenzhou1025@126.com All Rights Reserved.
 *
 */

package com.psim.bean;

/**
 * ClassName:MapModel <br/>
 * Function: map模型 <br/>
 * Reason: TODO ADD REASON. <br/>
 * Date: 2014年5月16日 下午12:35:37 <br/>
 * 
 * @author Administrator
 * @version
 * @since JDK 1.6
 * @see
 */
public class MapModel<K,V> {
	
	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, chenzhou1025@126.com All Rights Reserved.
 *
*/

package com.psim.bean;

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

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

	public List<MapModel> getMapModelList() {
		return mapModelList;
	}

	
}

  

分享到:
评论

相关推荐

    Java操作Redis,实现String、List、Map的set和get

    为了使代码更加健壮和易于使用,我们可以将这些方法封装在一个RedisService中,并添加Junit测试。例如,创建一个`RedisService`类: ```java @Service public class RedisService { @Autowired private ...

    Java模拟题 Java题库

    在Java的学习过程中,模拟题和题库是提升技能、准备面试和自我测试的重要工具。这里提供的“Java模拟题 Java题库”包含了10套完整的Java练习题目,每套都配有详细的答案,为学习者提供了宝贵的实践机会。 1. **基础...

    MAP protocol和Chandy and Lamport’s protocol的java实现

    总的来说,这个Java实现为学习和理解MAP协议与Chandy-Lamport算法提供了一个实际操作的平台,有助于深入研究分布式系统中故障检测和事件顺序的处理方法。通过分析和调试代码,可以进一步理解这些协议背后的理论,并...

    使用Java集合模拟JSTL包中的Result接口功能

    如果不想导包,那么,我们需要自己写,于是,本人使用Java的集合框架来完成模拟jstl的Result接口的功能--返回一个Map对象,然后通过表的字段名作为键来从Map对象中取所对应的记录集合list. 学习对象:所有学习Java...

    java275模拟题

    Java 275模拟题是针对Java程序员面试和笔试精心设计的一系列问题,旨在帮助准备者深入了解Java语言的核心概念和实战技巧。这些题目涵盖了广泛的Java知识领域,包括但不限于语法、面向对象编程、类与对象、封装、继承...

    java二级考试模拟题目

    Java二级考试是中国计算机技术与软件专业技术资格(水平)考试中的一个重要部分,主要考察考生对Java编程语言的基础知识、编程能力以及应用理解。本资料包含九套完整的模拟试题,每套题均附带了答案,为考生提供了...

    计算机二级Java上机模拟

    【计算机二级Java上机模拟】是一个专为准备Java二级上机考试的学习者设计的资源,它提供了丰富的练习和模拟测试,旨在帮助考生熟悉考试环境,提高编程能力,从而在实际考试中取得好成绩。这个模拟器包含了各种可能...

    简易电子词典(java)

    【简易电子词典(Java)】是一个基于Java编程语言实现的简单词汇查询工具,它允许用户在命令行界面中执行单词查询和添加等基本操作。这个项目为初学者提供了了解和实践面向对象编程、文件处理以及用户交互设计的平台...

    java技术文档及功能详细说明

    7. **反射**:反射是Java的一个强大特性,允许程序在运行时检查和修改自身的行为。这在配置文件驱动的应用、插件系统和动态代理等方面有广泛应用。 8. **JVM内存管理**:理解Java虚拟机(JVM)的工作原理对于优化...

    全国计算机等级考试二级Java模拟软件

    全国计算机等级考试二级Java模拟软件是一款专为备考全国计算机等级考试二级Java科目设计的学习工具。该软件涵盖了大量与考试相关的练习题,旨在帮助考生熟悉考试题型,提高解题技巧和速度,从而在实际考试中取得理想...

    Java模拟ATM机

    本项目采用Java语言进行开发,旨在通过模拟一个简单的自动柜员机(ATM)系统,来帮助理解和掌握面向对象编程的基本概念以及Java语言的一些核心特性。该ATM系统能够支持基本的银行账户操作,包括但不限于查询余额、...

    java模拟题16-30翻译

    这个文件很可能是文档格式,包含了一系列Java编程的模拟试题和可能的答案。用户可以下载此文件,逐一解答题目,以检验自己的Java编程水平,并对照答案进行自我评估。文档中可能包含了题目描述、选择题、填空题或者...

    黑马程序员java基础试题、笔记

    Java是世界上最流行的编程语言之一,尤其在企业级应用开发领域占据主导地位。"黑马程序员java基础试题、笔记"这个压缩包资源为Java初学者和希望加入...对于想要深入学习Java的朋友们来说,这是一个不可多得的学习宝库。

    java模拟题答案及解答.zip

    本资料“java模拟题答案及解答.zip”包含了一系列与Java相关的模拟试题及其答案,这对于正在学习Java或者准备Java相关考试的开发者来说是非常宝贵的资源。 一、Java基础 在Java基础部分,可能会涵盖变量、数据类型...

    JAVA认证模拟试题

    Java认证模拟试题是针对SUN公司(现在已被Oracle公司收购)的Java技术资格认证考试而设计的一套完整的复习材料。这些模拟试题旨在帮助考生熟悉考试格式、内容和难度,以便在实际考试中取得好成绩。Java认证对于那些...

    JAVA语言中文教程

    通常,第一个JAVA程序是“Hello World”示例,用于演示如何创建一个简单的JAVA类,并使用System.out.println()方法输出文本到控制台。第二个程序可能涉及更复杂的类和对象使用,如定义一个Person类,包含姓名和年龄...

    java五套模拟题(附答案)

    2. 继承:一个类可以继承另一个类的特性,扩展其功能,实现代码重用。 3. 多态:多态性允许同一种操作作用于不同的对象,产生不同的效果,增强了程序的灵活性。 4. 接口:接口定义了一组方法签名,是类之间的一种...

    Java模拟题及答案

    "Java模拟题及答案"这个资源对于正在学习或准备Java考试的学生来说是非常宝贵的。它包含了8套完整的Java模拟考试题以及相应的答案,这些题目涵盖了Java的基础语法、面向对象编程、异常处理、集合框架、多线程、I/O流...

    120个Java经典面试题和答案

    Java支持单一继承,即一个类只能继承一个父类,但可以通过实现接口来模拟多重继承。 #### 四、其他主题 **Java线程** Java线程是Java并发编程的基础。Java提供了Thread类和Runnable接口来创建线程。此外,Java还...

Global site tag (gtag.js) - Google Analytics