有序Map使用,LinkedHashMap

<pre name="code" class="java"><span style="font-size:14px;">安卓项目中经常需要拼接URL参数,我是这样处理的</span>
<span style="font-size:14px;">public class ApiParams {
	
	/**
	 * @param map
	 * @return 返回以 "key/value" 隔开的url参数
	 */
	public static String mapToUrl1(Map<String, Object> map){
		String str = "";
		//效率低
//		Iterator<String> iter = map.keySet().iterator();
//		while (iter.hasNext()) {
//		   String key = iter.next();
//		   Object value = map.get(key);
//		   str += "/"+key+"/"+value;
//		}
		//效率更高这个方法
		for (String key : map.keySet()) {
			Object value = map.get(key);
			str += "/"+key+"/"+value;
		}
		return str;
	}
	
	/**
	 * @param map
	 * @return 返回 "key=value" url参数
	 */
	public static String mapToUrl2(Map<String, Object> map){
		String str = "";		
		//效率更高这个方法
		for (String key : map.keySet()) {
			Object value = map.get(key);
			str += key+"="+value+"&";
		}
		return str;
	}
}</span>
<span style="font-size:14px;">
</span>
<span style="font-size:14px;">使用:</span>
<span style="font-size:14px;"><span style="white-space:pre">	</span>public static void main(String args[]){</span>
<span style="font-size:14px;"></span><pre name="code" class="java"><span style="white-space:pre">		</span>Map<String ,Object> map = new LinkedHashMap<String ,Object>();//必须用有序Map		
		map.put("departids","-7");		
		map.put("page", 1);
		map.put("rows", "10");
		map.put("userName", "张三");
//ApiParams.mapToUrl1(map);
 
<span style="font-size:14px;"><span style="white-space:pre">		</span>System.out.println(</span><span style="font-family: Arial, Helvetica, sans-serif; font-size: 14px;">ApiParams.mapToUrl1(map)</span><span style="font-family: Arial, Helvetica, sans-serif;">);</span>
<span style="font-size:14px;"><span style="white-space:pre">	</span>}
输出:departids/-7/page/1/rows/10/userName/张三</span>



                
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值