以前学习安卓的时候,通信用到的很方便的拼接参数。
项目中通过通信要获取一些数据,会对连接进行拼接,例如:http://127.0.0.1:8080/login.aspx?cid=1&uid=1&pwd=1 这样的连接进行拼接,经常会遇到少一个多一个“&”或者“=”等符号,访问数据就会报错,所以最好写一个类进行拼接封装起来,下面就给大家上代码吧
<pre name="code" class="java">import java.util.HashMap;
import java.util.Map.Entry;
import java.util.Set;
public class RequestParams {
private HashMap<String, String> params;
public RequestParams() {
params = new HashMap<String, String>();
}
public void put(String key, String value) {
params.put(key, value);
}
@Override
public String toString() {
//将map集合放到set中
Set<Entry<String, String>> entries = params.entrySet();
StringBuilder builder = new StringBuilder();
//循环将set数据取出来追加在builder里
for (Entry<String, String> entry : entries) {
builder.append(entry.getKey() + "=" + entry.getValue() + "&");
}
if (!builder.equals("") &&builder.toString().contains("&") ) {
builder.deleteCharAt(builder.lastIndexOf("&"));
}
return builder.toString();
}
public HashMap<String, String> getParams() {
return params;
}
}
</pre><pre name="code" class="java">
其中params就是拼接好参数
我们可以写成这样
RequestParams params = new RequestParams();
params.put("cid", "1");
params.put("mobile","1");
params.put("pwd","1");
url=
http://127.0.0.1:8080/login.aspx?
path=url+params path就是 http://127.0.0.1:8080/login.aspx?cid=1&uid=1&pwd=1
下篇上http异步打包就行回调 很实用