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`实现,包括`HashMap`和`EnumMap`。 首先,`Map`接口定义了一些基本操作,如`put`用于添加键值对,`get`用于获取与给定键关联的值,`remove`用于移除键值对,以及`size`用于返回...
测试HTML页面可能包含使用此自定义`Map`类的示例代码,以验证其功能是否正确。通过实际运行这些测试,我们可以更好地理解和调试`Map`的实现。 此外,这个自定义实现与原生`Map`的区别在于性能和内存管理。原生`Map`...
本文实例讲述了微信小程序使用map组件实现检索(定位位置)周边的POI功能。分享给大家供大家参考,具体如下: 声明 bug: 页面顶部分类【汽车服务、汽车销售等】列表和页脚的详细地址在真机测试是会出现不显示问题? ...
在Windows环境下,SVM-MAP的实现通常涉及以下步骤: 1. 数据预处理:将文本数据转换为数值特征向量,例如使用TF-IDF(词频-逆文档频率)方法。 2. 训练模型:利用SVM算法训练一个分类器,输入是特征向量,输出是文档...
在Java环境中调用MapServer,通常会利用MapScript库来实现,这是一个允许编程语言与MapServer进行交互的接口。本实例主要探讨如何在Java项目中配置和使用MapServer,以及解决配置过程中遇到的问题。 首先,我们需要...
本资源主要介绍了如何使用Python将测试数据转化为map图,并对其进行上色,以便于直观地观察测试数据的趋势。 知识点1:Python数据处理 在本资源中,我们使用了Python的pandas库来处理数据,并将其转化为map图。...
总结来说,JAXB虽然主要用于对象绑定,但在处理XML数据时,我们可以通过自定义实现将XML数据转换为Map,以适应更灵活的数据处理需求。这个过程涉及XML的解析、节点遍历以及Map的构建。虽然JAXB不直接提供这个功能,...
`Maptest.cpp`和`rb_treeTest.cpp`可能是测试用例,用来验证`map`和红黑树的实现是否正确。这些测试用例通常会覆盖各种操作,如插入、查找、删除,以及遍历等。 `rb_tree_iterator.h`可能包含红黑树的迭代器实现,...
在Java实现中,`MAP.java`可能包含了协议的核心逻辑,包括节点间的交互规则和故障判断条件。`MAP_Node.java`可能定义了代表网络中节点的类,其中包含处理消息、发送心跳以及状态更新的函数。`Control_Msg.java`可能...
"3.1 Tilemap与Phy物理引擎接口测试"项目就是针对这个主题的一个实例,旨在帮助开发者理解和掌握如何在Cocos2d-x中将Tilemap与物理引擎(例如Box2D)进行有效结合。 首先,让我们深入了解一下Tilemap。Tilemap是...
总结,通过使用Java的Jedis库,我们可以轻松地实现对Redis的String、List和Map的操作。通过封装和单元测试,可以提高代码的可维护性和可靠性。在实际项目中,还可以考虑使用更高级的客户端如Lettuce,以及Spring ...
总之,这个项目展示了如何在Matlab环境中结合C++的容器类实现Markov算法,以及如何利用统计学习方法生成基于原始文本的随机文本。这对于理解文本生成、自然语言处理以及概率模型的应用具有重要的实践意义。通过这个...
该项目的核心思想是生成一个类`sync.Map`的结构体,这个结构体可以包含用户自定义的方法和字段。这样,开发者可以根据实际需求扩展`sync.Map`,例如添加缓存策略、日志记录、统计信息等。以下是关于`Go-syncmap`的...
对于`HashMap`这类无序的`Map`实现,遍历顺序是不确定的;而对于`LinkedHashMap`,则可以保持插入或访问顺序。理解这些差异对优化代码性能和可读性至关重要。 在工具使用方面,`Map`的遍历常用于数据处理、日志记录...
4. **配置CXF**:在Spring配置文件中,配置CXF端点,指定服务接口和实现类。 5. **暴露服务**:通过Spring Boot的`@RestController`注解暴露RESTful接口。 在客户端,你可以使用HTTP库(如Apache HttpClient或Java...
MapStruct在编译时会生成实现这个接口的类,这个类包含了实际的映射逻辑。这样,我们就不需要手动编写这些转换方法。 在"mapstruct-plus-main.zip"这个压缩包中,可能包含以下内容: 1. **源码**:MapStruct Plus...
这里我们将深入探讨CSV文件的读取、Map数据结构的应用以及如何在C++中实现这些功能。 CSV文件是一种常见的数据存储格式,通常用于存储表格数据,如电子表格或数据库。它的优点在于简单、通用,可以被各种程序读取,...
压缩包中的“地图可视化”文件可能包含了一些地图数据或者用于演示的图层文件,这些文件可以用来测试和展示map_view的功能。在实际开发中,开发者需要知道如何读取和解析各种GIS数据格式,如Shapefile、GeoTIFF、MDB...
"Map-like"类地图对象是一个这样的工具,它主要用于处理键值对数据,模仿JavaScript内置的Map对象,但可能具有更轻量级、更定制化的特性,适合在前端环境中使用。 Map-like库通常具有以下核心特点: 1. 键值对存储...
它提供了丰富的API,使得开发者能够控制浏览器进行各种操作,如点击、输入、导航等,从而实现自动化测试脚本的编写。在这个"**Selenium_API_map**"中,我们主要探讨的是Selenium Remote Control(Selenium-RC)的...