​H​a​s​h​M​a​p​ ​,​ ​T​r​e​e​M​a​p​ ​,​ ​T​r​e​e​M​a​p​ ​默​认​排​序方式

本文通过实例代码展示了Java中三种不同类型的Map集合:HashMap、TreeMap及LinkedHashMap的区别。主要探讨了它们各自的排序方式,包括HashMap基于HashCode的无序特性、TreeMap基于键的排序功能以及LinkedHashMap保持插入顺序的特点。

先看代码

package test;

import java.util.HashMap;
import java.util.LinkedHashMap;
import java.util.Map;
import java.util.TreeMap;

public class Maps {
	
	public static void  main(String[] args) {
		Map tree = new TreeMap<>();
		Map linked = new LinkedHashMap<>();
		Map hash = new HashMap<>();
		
		System.out.println("tree :"+buildMap(tree));
		System.out.println("tree :"+buildMap(linked));
		System.out.println("tree :"+buildMap(hash));
	}
	
	public static Map buildMap(Map map) {
		map.put("0", "a");
		map.put("e", "b");
		map.put("4", "s");
		map.put("3", "c");
		return map;
	}

}

输出结果

tree :{0=a, 3=c, 4=s, e=b}
linked :{0=a, e=b, 4=s, 3=c}
hash :{3=c, e=b, 0=a, 4=s}

由此可见:  
HashMap是按照HashCode 排序,莫名其妙的顺序。  
TreeMap是按照自身的顺序排序,比如数字的话,按照数字升序,ascII等。
LinkedHashMap是按照先进先出的顺序


目  录  一 使用Axis和XFire发布Web Service ......................................................................................... 2  1.1 准备工作............................................................................................................................ 2  1.1.1 新建工程 ................................................................................................................. 2 1.1.2 axis依赖文件 ........................................................................................................... 3 1.1.3 XFire依赖文件 ........................................................................................................ 3 1.2 Axis发布Web Service ........................................................................................................ 4  1.2.1 传递简单数据类型的Web Service ........................................................................ 4 1.2.2 带自定义对象传递的Web Service ........................................................................ 8 1.3 XFire发布Web Services ................................................................................................... 10  1.3.1 传递简单数据类型的Web Service ...................................................................... 10 1.3.2传递复杂数据类型的Web Service ....................................................................... 12 附录: 1Server的结构 ............................................................................................................. 16 二 调用Web Services .................................................................................................................... 17  2.1 准备工作.......................................................................................................................... 17  2.1.1 新建工程 ............................................................................................................... 17 2.1.2 启动Tomcat上发布的1Server服务 ................................................................... 17 2.2 Axis发布的Web Service调用方式 ................................................................................. 18  2.2.1 Dynamic Invocation Interface (DII)方式 ................................................................. 18 2.2.2 Dynamic Proxy方式 ............................................................................................... 19 2.2.3 Stubs方式 .............................................................................................................. 20 2.3调用XFire发布的Web Service ....................................................................................... 22  2.3.1服务以jar包形式发布的时候 直接调用 ............................................................ 23 2.3.2 使用Axis的Client包 ........................................................................................... 23 2.3.3 使用Xfire的Client包 .......................................................................................... 24 附录2:2Client目录结构 ..................................................................................................... 31
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值