`

Map实现类测试

    博客分类:
  • Test
 
阅读更多
public class MapTest {
	long startTime;
	long endTime;
	
	public void testHashMap(){
		Map<String,String> map = new HashMap<String, String>();
		System.out.println("************HashMap开始测试*************");
		
		map.put("zhangsan", "23岁");
		map.put("lisi", "29岁");
		map.put("admin", "20岁");
		map.put(null,null);
		startTime = System.nanoTime();
		for(Map.Entry<String, String> entry : map.entrySet()){
			System.out.println(entry.getKey()+" : "+entry.getValue());
		}
		endTime = System.nanoTime();
		System.out.println("*****HashMap结束测试,用时:"+(endTime - startTime)+"*******");

//		运行结果:
//		************HashMap开始测试*************
//		null : null
//		admin : 20岁
//		lisi : 29岁
//		zhangsan : 23岁
//		*****HashMap结束测试,用时:479949*******
		/**
		 * hashMap允许空的key和value,不是同步的,效率要高。
		 */
	}
	
	public void testHashtable(){
		Map<String,String> map = new Hashtable<String,String>();
		System.out.println("************Hashtable开始测试*************");
		
		map.put("zhangsan", "23岁");
		map.put("lisi", "29岁");
		map.put("admin", "20岁");
//		map.put(null,null);
		
		startTime = System.nanoTime();
		for(Map.Entry<String, String> entry : map.entrySet()){
			System.out.println(entry.getKey()+" : "+entry.getValue());
		}
		endTime = System.nanoTime();
		System.out.println("*****Hashtable结束测试,用时:"+(endTime - startTime)+"*******");
		
//		运行结果:
//		************Hashtable开始测试*************
//		admin : 20岁
//		zhangsan : 23岁
//		lisi : 29岁
//		*****Hashtable结束测试,用时:268190*******
		/**
		 * Hashtable不允许空的key或value,是线程同步的,效率较低。
		 */
	}
	
	public void testTreeMap(){
		Map<String,String> map = new TreeMap<String,String>();
		System.out.println("************TreeMap开始测试*************");
		map.put("zhangsan", "23岁");
		map.put("lisi", "29岁");
		map.put("admin", "20岁");
		map.put("base", null);
		startTime = System.nanoTime();
		for(Map.Entry<String, String> entry : map.entrySet()){
			System.out.println(entry.getKey()+" : "+entry.getValue());
		}
		endTime = System.nanoTime();
		System.out.println("*****TreeMap结束测试,用时:"+(endTime - startTime)+"*******");
		
//		运行结果:
//		************TreeMap开始测试*************
//		admin : 20岁
//		base : null
//		lisi : 29岁
//		zhangsan : 23岁
//		*****TreeMap结束测试,用时:484977*******
		/**
		 * TreeMap 不允许key为空,不是同步的,会根据其键的自然顺序进行排序
		 */
	}
	
	public static void main(String[] args) {
		MapTest map = new MapTest();
		map.testHashMap();
		map.testHashtable();
		map.testTreeMap();
	}
分享到:
评论

相关推荐

    Java中常用Map测试示例

    本示例将深入探讨Java中常用的`Map`实现,包括`HashMap`和`EnumMap`。 首先,`Map`接口定义了一些基本操作,如`put`用于添加键值对,`get`用于获取与给定键关联的值,`remove`用于移除键值对,以及`size`用于返回...

    map的js实现

    测试HTML页面可能包含使用此自定义`Map`类的示例代码,以验证其功能是否正确。通过实际运行这些测试,我们可以更好地理解和调试`Map`的实现。 此外,这个自定义实现与原生`Map`的区别在于性能和内存管理。原生`Map`...

    微信小程序使用map组件实现检索(定位位置)周边的POI功能示例

    本文实例讲述了微信小程序使用map组件实现检索(定位位置)周边的POI功能。分享给大家供大家参考,具体如下: 声明 bug: 页面顶部分类【汽车服务、汽车销售等】列表和页脚的详细地址在真机测试是会出现不显示问题? ...

    windows版svm-map文档分类排序

    在Windows环境下,SVM-MAP的实现通常涉及以下步骤: 1. 数据预处理:将文本数据转换为数值特征向量,例如使用TF-IDF(词频-逆文档频率)方法。 2. 训练模型:利用SVM算法训练一个分类器,输入是特征向量,输出是文档...

    mapserver+java 配置及实例,网上项目报错已修改

    在Java环境中调用MapServer,通常会利用MapScript库来实现,这是一个允许编程语言与MapServer进行交互的接口。本实例主要探讨如何在Java项目中配置和使用MapServer,以及解决配置过程中遇到的问题。 首先,我们需要...

    用python对生成的map图上色

    本资源主要介绍了如何使用Python将测试数据转化为map图,并对其进行上色,以便于直观地观察测试数据的趋势。 知识点1:Python数据处理 在本资源中,我们使用了Python的pandas库来处理数据,并将其转化为map图。...

    jaxb xml 转map

    总结来说,JAXB虽然主要用于对象绑定,但在处理XML数据时,我们可以通过自定义实现将XML数据转换为Map,以适应更灵活的数据处理需求。这个过程涉及XML的解析、节点遍历以及Map的构建。虽然JAXB不直接提供这个功能,...

    STL map 阅读源码有感,map简单实现

    `Maptest.cpp`和`rb_treeTest.cpp`可能是测试用例,用来验证`map`和红黑树的实现是否正确。这些测试用例通常会覆盖各种操作,如插入、查找、删除,以及遍历等。 `rb_tree_iterator.h`可能包含红黑树的迭代器实现,...

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

    在Java实现中,`MAP.java`可能包含了协议的核心逻辑,包括节点间的交互规则和故障判断条件。`MAP_Node.java`可能定义了代表网络中节点的类,其中包含处理消息、发送心跳以及状态更新的函数。`Control_Msg.java`可能...

    3.1 Tilemap与Phy物理引擎接口测试

    "3.1 Tilemap与Phy物理引擎接口测试"项目就是针对这个主题的一个实例,旨在帮助开发者理解和掌握如何在Cocos2d-x中将Tilemap与物理引擎(例如Box2D)进行有效结合。 首先,让我们深入了解一下Tilemap。Tilemap是...

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

    总结,通过使用Java的Jedis库,我们可以轻松地实现对Redis的String、List和Map的操作。通过封装和单元测试,可以提高代码的可维护性和可靠性。在实际项目中,还可以考虑使用更高级的客户端如Lettuce,以及Spring ...

    基于matlab利用Markov算法根据原始文本的统计规律生成随机文本,利用容器vector, map实现。包含详细测试数据

    总之,这个项目展示了如何在Matlab环境中结合C++的容器类实现Markov算法,以及如何利用统计学习方法生成基于原始文本的随机文本。这对于理解文本生成、自然语言处理以及概率模型的应用具有重要的实践意义。通过这个...

    Go-syncmap一个基于代码生成的Gosync.Map类型实现

    该项目的核心思想是生成一个类`sync.Map`的结构体,这个结构体可以包含用户自定义的方法和字段。这样,开发者可以根据实际需求扩展`sync.Map`,例如添加缓存策略、日志记录、统计信息等。以下是关于`Go-syncmap`的...

    java Map遍历方法

    对于`HashMap`这类无序的`Map`实现,遍历顺序是不确定的;而对于`LinkedHashMap`,则可以保持插入或访问顺序。理解这些差异对优化代码性能和可读性至关重要。 在工具使用方面,`Map`的遍历常用于数据处理、日志记录...

    spring,cxf,restful发布webservice传递List,Map,List&lt;Map&gt;

    4. **配置CXF**:在Spring配置文件中,配置CXF端点,指定服务接口和实现类。 5. **暴露服务**:通过Spring Boot的`@RestController`注解暴露RESTful接口。 在客户端,你可以使用HTTP库(如Apache HttpClient或Java...

    mapstruct-plus-main.zip

    MapStruct在编译时会生成实现这个接口的类,这个类包含了实际的映射逻辑。这样,我们就不需要手动编写这些转换方法。 在"mapstruct-plus-main.zip"这个压缩包中,可能包含以下内容: 1. **源码**:MapStruct Plus...

    CSV、Map文件读取和处理

    这里我们将深入探讨CSV文件的读取、Map数据结构的应用以及如何在C++中实现这些功能。 CSV文件是一种常见的数据存储格式,通常用于存储表格数据,如电子表格或数据库。它的优点在于简单、通用,可以被各种程序读取,...

    map_view.rar_DEMO_map view_map_view_mapisj6.7

    压缩包中的“地图可视化”文件可能包含了一些地图数据或者用于演示的图层文件,这些文件可以用来测试和展示map_view的功能。在实际开发中,开发者需要知道如何读取和解析各种GIS数据格式,如Shapefile、GeoTIFF、MDB...

    前端开源库-map-like

    "Map-like"类地图对象是一个这样的工具,它主要用于处理键值对数据,模仿JavaScript内置的Map对象,但可能具有更轻量级、更定制化的特性,适合在前端环境中使用。 Map-like库通常具有以下核心特点: 1. 键值对存储...

    Selenium_API_map

    它提供了丰富的API,使得开发者能够控制浏览器进行各种操作,如点击、输入、导航等,从而实现自动化测试脚本的编写。在这个"**Selenium_API_map**"中,我们主要探讨的是Selenium Remote Control(Selenium-RC)的...

Global site tag (gtag.js) - Google Analytics