activity_main.xml

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="vertical" > <TableLayout
android:layout_width="wrap_content"
android:layout_height="match_parent" > <TableRow> <TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="org.json" /> <TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="fastjson" /> <TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="gson" />
</TableRow> <TableRow> <LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="vertical" > <Button
android:id="@+id/person"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:onClick="click"
android:text="person" /> <Button
android:id="@+id/persons"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:onClick="click"
android:text="persons" /> <Button
android:id="@+id/stringList"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:onClick="click"
android:text="stringList" /> <Button
android:id="@+id/listMap"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:onClick="click"
android:text="listMap" /> <Button
android:id="@+id/raw"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:onClick="click"
android:text="Self" />
</LinearLayout> <LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="vertical" > <Button
android:id="@+id/person2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:onClick="click"
android:text="person" /> <Button
android:id="@+id/persons2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:onClick="click"
android:text="persons" /> <Button
android:id="@+id/stringList2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:onClick="click"
android:text="stringList" /> <Button
android:id="@+id/listMap2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:onClick="click"
android:text="listMap" /> <Button
android:id="@+id/raw2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:onClick="click"
android:text="Self" />
</LinearLayout> <LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="vertical" > <Button
android:id="@+id/person3"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:onClick="click"
android:text="person" /> <Button
android:id="@+id/persons3"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:onClick="click"
android:text="persons" /> <Button
android:id="@+id/stringList3"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:onClick="click"
android:text="stringList" /> <Button
android:id="@+id/listMap3"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:onClick="click"
android:text="listMap" /> <Button
android:id="@+id/raw3"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:onClick="click"
android:text="Self" />
</LinearLayout>
</TableRow>
</TableLayout> <Button
android:id="@+id/rawString"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:onClick="click"
android:text="RawString" /> <TextView
android:id="@+id/tvShow"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/hello_world" /> </LinearLayout>

Manifest.xml

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.example.netjson"
android:versionCode="1"
android:versionName="1.0" > <uses-sdk
android:minSdkVersion="8"
android:targetSdkVersion="17" /> <uses-permission android:name="android.permission.INTERNET" /> <application
android:allowBackup="true"
android:icon="@drawable/ic_launcher"
android:label="@string/app_name"
android:theme="@style/AppTheme" >
<activity
android:name="com.example.netjson.MainActivity"
android:label="@string/app_name" >
<intent-filter>
<action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
</application> </manifest>

MainActivity.java

package com.example.netjson;

import java.io.InputStream;
import java.util.ArrayList;
import java.util.Date;
import java.util.HashMap;
import java.util.Iterator;
import java.util.List;
import java.util.Map; import org.json.JSONArray;
import org.json.JSONException;
import org.json.JSONObject;
import org.json.JSONStringer; import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.TypeReference; import android.os.Bundle;
import android.os.Handler;
import android.os.Message;
import android.app.Activity;
import android.util.Log;
import android.view.Menu;
import android.view.View;
import android.widget.TextView; import com.google.gson.Gson;
import com.google.gson.reflect.TypeToken; public class MainActivity extends Activity { String PATH = "http://192.168.0.102:7020/JSON.aspx";
String TAG = "JSON";
TextView tvShow;
Handler handler = new Handler() {
@Override
public void handleMessage(Message msg) {
switch (msg.what) {
case 0x123:
tvShow.setText(msg.obj.toString());
Log.i(TAG, msg.obj.toString());
break;
}
}
}; @Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
tvShow = (TextView) findViewById(R.id.tvShow);
} public void click(final View v) {
final int vId = v.getId();
new Thread() {
public void run() {
asynCall(vId);
}
}.start();
} private void asynCall(int viewId) {
String jsonStr = "";
switch (viewId) {
case R.id.person:
String path1 = PATH + "?action_flag=person";
String jsonString1 = HTTPUtils.getJsonContent(path1);
Person person = JSONTool.getPerson(jsonString1);
jsonStr = person.toString();
break;
case R.id.persons:
String path2 = PATH + "?action_flag=persons";
String jsonString2 = HTTPUtils.getJsonContent(path2);
List<Person> list2 = JSONTool.getPersons(jsonString2);
jsonStr = list2.toString();
break;
case R.id.stringList:
String path3 = PATH + "?action_flag=stringList";
String jsonString3 = HTTPUtils.getJsonContent(path3);
List<String> list3 = JSONTool.getList(jsonString3);
jsonStr = list3.toString();
break;
case R.id.listMap:
String path4 = PATH + "?action_flag=listMap";
String jsonString4 = HTTPUtils.getJsonContent(path4);
List<Map<String, Object>> list4 = JSONTool.getListMap(jsonString4);
jsonStr = list4.toString();
break;
case R.id.raw:
List<Map<String, Object>> list = getListMap(); JSONObject jo = new JSONObject();
try {
jo.put("list", list);
} catch (JSONException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
}
String jStr = jo.toString();
list.clear();
try {
JSONObject jsonObject = new JSONObject(jStr);
JSONArray jsonArray = jsonObject.getJSONArray("list");
for (int i = 0; i < jsonArray.length(); i++) {
JSONObject jsonObject2 = jsonArray.getJSONObject(i);
Map<String, Object> map = new HashMap<String, Object>();
Iterator<String> iterator = jsonObject2.keys();
while (iterator.hasNext()) {
String json_key = iterator.next();
Object json_value = jsonObject2.get(json_key);
if (json_value == null) {
json_value = "";
}
map.put(json_key, json_value);
}
list.add(map);
}
} catch (JSONException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
jsonStr = list.toString();
break;
case R.id.person2:
String path21 = PATH + "?action_flag=person";
String jsonString21 = HTTPUtils.getJsonContent(path21);
Person person2 = FastJsonTools
.getPerson(jsonString21, Person.class);
jsonStr = person2.toString();
break;
case R.id.persons2:
String path22 = PATH + "?action_flag=persons";
String jsonString22 = HTTPUtils.getJsonContent(path22);
List<Person> list22 = FastJsonTools.getPersons(jsonString22,
Person.class);
jsonStr = list22.toString();
break;
case R.id.stringList2:
String path23 = PATH + "?action_flag=stringList";
String jsonString23 = HTTPUtils.getJsonContent(path23);
List<String> list23 = FastJsonTools.getPersons(jsonString23,
String.class);
jsonStr = list23.toString();
break;
case R.id.listMap2:
String path24 = PATH + "?action_flag=listMap";
String jsonString24 = HTTPUtils.getJsonContent(path24);
List<Map<String, Object>> list24 = FastJsonTools
.getListMap(jsonString24);
jsonStr = list24.toString();
break;
case R.id.raw2:
List<Map<String, Object>> listt = getListMap(); String jStrt = JSON.toJSONString(listt);
List<Map<String, Object>> l = JSON.parseObject(jStrt,
new TypeReference<List<Map<String, Object>>>() {
});
jsonStr = l.toString();
break;
case R.id.person3:
String path31 = PATH + "?action_flag=person";
String jsonString31 = HTTPUtils.getJsonContent(path31);
Person person3 = GsonTools.getPerson(jsonString31, Person.class);
jsonStr = person3.toString();
break;
case R.id.persons3:
String path32 = PATH + "?action_flag=persons";
String jsonString32 = HTTPUtils.getJsonContent(path32);
List<Person> list32 = GsonTools.getPersons(jsonString32,
Person.class);
jsonStr = list32.toString();
break;
case R.id.stringList3:
String path33 = PATH + "?action_flag=stringList";
String jsonString33 = HTTPUtils.getJsonContent(path33);
List<String> list33 = GsonTools.getList(jsonString33);
jsonStr = list33.toString();
break;
case R.id.listMap3:
String path34 = PATH + "?action_flag=listMap";
String jsonString34 = HTTPUtils.getJsonContent(path34);
List<Map<String, Object>> list34 = GsonTools
.listKeyMaps(jsonString34);
jsonStr = list34.toString();
break;
case R.id.raw3:
List<Map<String, Object>> listg = getListMap(); Gson gson = new Gson();
String jStrg = gson.toJson(listg);
listg.clear();
try {
listg = gson.fromJson(jStrg,
new TypeToken<List<Map<String, Object>>>() {
}.getType());
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
jsonStr = listg.toString();
break;
case R.id.rawString:
String x;
JSONObject obj;
try {
InputStream is = this.getResources()
.openRawResource(R.raw.json);
byte[] buffer = new byte[is.available()];
is.read(buffer);
String json = new String(buffer, "utf-8");
obj = new JSONObject(json);
StringBuilder sb = new StringBuilder(); x = obj.getString("姓名");
sb.append("======姓名========\n" + x);
x = obj.getString("性别");
sb.append("\n======性别========\n" + x);
x = obj.getString("年龄");
sb.append("\n======年龄========\n" + x); JSONObject obj1 = obj.getJSONObject("学习成绩");
x = obj1.getString("数学");
sb.append("\n======数学========\n" + x);
x = obj1.getString("语文");
sb.append("\n======语文========\n" + x);
x = obj1.getString("英语");
sb.append("\n======英语========\n" + x); JSONArray array = obj1.getJSONArray("综合");
obj = array.getJSONObject(0);
x = obj.getString("文科综合");
sb.append("\n======文科综合========\n" + x);
obj = array.getJSONObject(1);
x = obj.getString("理科综合");
sb.append("\n======理科综合========\n" + x); JSONStringer s = new JSONStringer();
sb.append("\n======================\n"
+ s.object().key("a").value("aaa").endObject()
.toString());
jsonStr = sb.toString();
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
} break;
}
Message msg = new Message();
msg.what = 0x123;
msg.obj = jsonStr;
handler.sendMessage(msg);
} private List<Map<String, Object>> getListMap() {
List<Map<String, Object>> list = new ArrayList<Map<String, Object>>();
Map<String, Object> map1 = new HashMap<String, Object>();
map1.put("Id", 1001);
map1.put("name", "jack");
map1.put("address", "beijing");
Map<String, Object> map2 = new HashMap<String, Object>();
map2.put("id", 1002);
map2.put("name", "rose");
map2.put("address", "shanghai");
// map2.put("Married", false);
// map2.put("Birthday", new Date());
list.add(map1);
list.add(map2);
return list;
} @Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.main, menu);
return true;
} }

Person.java

package com.example.netjson;

public class Person {
private int id;
private String name;
private String address; public Person() {
super();
} public Person(int id, String name, String addrss) {
super();
this.id = id;
this.name = name;
this.address = addrss;
} public int getId() {
return id;
} public void setId(int id) {
this.id = id;
} public String getName() {
return name;
} public void setName(String name) {
this.name = name;
} public String getAddress() {
return address;
} public void setAddress(String address) {
this.address = address;
} @Override
public String toString() {
return "Person [addrss=" + address + ", id=" + id + ", name=" + name
+ "]";
}
}

HTTPUtils.java

package com.example.netjson;

import java.io.ByteArrayOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.net.HttpURLConnection;
import java.net.MalformedURLException;
import java.net.URL; public class HTTPUtils { public HTTPUtils() {
} public static String getJsonContent(String path) {
try {
URL url = new URL(path);
HttpURLConnection connection = (HttpURLConnection) url
.openConnection();
connection.setConnectTimeout(30000);
connection.setRequestMethod("GET");
connection.setDoInput(true);
int code = connection.getResponseCode();
if (code == 200) {
return changeInputStream(connection.getInputStream());
}
} catch (MalformedURLException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
return null;
} /**
* 将一个输入流转换成指定编码的字符串
*
* @param inputStream
* @return
*/
private static String changeInputStream(InputStream inputStream) {
String jsonString = "";
ByteArrayOutputStream outputStream = new ByteArrayOutputStream();
int len = 0;
byte[] data = new byte[1024];
try {
while ((len = inputStream.read(data)) != -1) {
outputStream.write(data, 0, len);
}
jsonString = new String(outputStream.toByteArray());
} catch (IOException e) {
e.printStackTrace();
}
return jsonString;
}
}

JOSNTool.java

package com.example.netjson;

import java.util.ArrayList;
import java.util.HashMap;
import java.util.Iterator;
import java.util.List;
import java.util.Map; import org.json.JSONArray;
import org.json.JSONException;
import org.json.JSONObject; /**
* 完成对JSON数据的解析
*
* @author wulianghuan
*
*/
public class JSONTool { public JSONTool() { } public static String createjsonString(String key, Object value) {
JSONObject jsonObject = new JSONObject();
try {
jsonObject.put(key, value);
} catch (JSONException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return jsonObject.toString();
} /**
* 获取对象数据
*
* @param key
* @param jsonString
* @return
*/
public static Person getPerson(String jsonString) {
Person person = new Person();
try {
JSONObject personObject = new JSONObject(jsonString);
person.setId(personObject.getInt("id"));
person.setName(personObject.getString("name"));
person.setAddress(personObject.getString("address"));
} catch (JSONException e) {
e.printStackTrace();
}
return person;
} /**
* 获取对象数组数据
*
* @param key
* @param jsonString
* @return
*/
public static List<Person> getPersons(String jsonString) {
List<Person> list = new ArrayList<Person>();
try {
JSONArray jsonArray = new JSONArray(jsonString);
// 返回json的数组
for (int i = 0; i < jsonArray.length(); i++) {
JSONObject jsonObject2 = jsonArray.getJSONObject(i);
Person person = new Person();
person.setId(jsonObject2.getInt("id"));
person.setName(jsonObject2.getString("name"));
person.setAddress(jsonObject2.getString("address"));
list.add(person);
}
} catch (JSONException e) {
e.printStackTrace();
} return list;
} /**
* 获取String数组数据
*
* @param key
* @param jsonString
* @return
*/
public static List<String> getList(String jsonString) {
List<String> list = new ArrayList<String>();
try {
JSONArray jsonArray = new JSONArray(jsonString);
for (int i = 0; i < jsonArray.length(); i++) {
String msg = jsonArray.getString(i);
list.add(msg);
}
} catch (JSONException e) {
e.printStackTrace();
}
return list;
} /**
* 获取对象的Map集合数据
*
* @param key
* @param jsonString
* @return
*/
public static List<Map<String, Object>> getListMap(String jsonString) {
List<Map<String, Object>> list = new ArrayList<Map<String, Object>>();
try {
JSONArray jsonArray = new JSONArray(jsonString);
for (int i = 0; i < jsonArray.length(); i++) {
JSONObject jsonObject2 = jsonArray.getJSONObject(i);
Map<String, Object> map = new HashMap<String, Object>();
Iterator<String> iterator = jsonObject2.keys();
while (iterator.hasNext()) {
String json_key = iterator.next();
Object json_value = jsonObject2.get(json_key);
if (json_value == null) {
json_value = "";
}
map.put(json_key, json_value);
}
list.add(map);
}
} catch (JSONException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} return list;
}
}

FastJsonTool.java

package com.example.netjson;

import java.util.ArrayList;
import java.util.List;
import java.util.Map; import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.TypeReference; public class FastJsonTools { public FastJsonTools() {
// TODO Auto-generated constructor stub
} /**
* @param <T>
* @param jsonString
* @param cls
* @return
*/
public static <T> T getPerson(String jsonString, Class<T> cls) {
T t = null;
try {
t = JSON.parseObject(jsonString, cls);
} catch (Exception e) {
e.printStackTrace();
// TODO: handle exception
}
return t;
} /**
* 使用Gson进行解析 List<Person>
*
* @param <T>
* @param jsonString
* @param cls
* @return
*/
public static <T> List<T> getPersons(String jsonString, Class<T> cls) {
List<T> list = new ArrayList<T>();
try {
list = JSON.parseArray(jsonString, cls);
} catch (Exception e) {
}
return list;
} public static List<Map<String, Object>> getListMap(String jsonString) {
List<Map<String, Object>> list = new ArrayList<Map<String, Object>>();
try {
list = JSON.parseObject(jsonString,
new TypeReference<List<Map<String, Object>>>() {
});
} catch (Exception e) {
e.printStackTrace();
}
return list;
}
}

GsonTool.java

package com.example.netjson;

import java.util.ArrayList;
import java.util.List;
import java.util.Map; import com.google.gson.Gson;
import com.google.gson.reflect.TypeToken; ;
public class GsonTools { public GsonTools() {
// TODO Auto-generated constructor stub
} /**
* @param <T>
* @param jsonString
* @param cls
* @return
*/
public static <T> T getPerson(String jsonString, Class<T> cls) {
T t = null;
try {
Gson gson = new Gson();
t = gson.fromJson(jsonString, cls);
} catch (Exception e) {
// TODO: handle exception
}
return t;
} /**
* 使用Gson进行解析 List<Person>
*
* @param <T>
* @param jsonString
* @param cls
* @return
*/
public static <T> List<T> getPersons(String jsonString, Class<T> cls) {
List<T> list = new ArrayList<T>();
try {
Gson gson = new Gson();
list = gson.fromJson(jsonString, new TypeToken<List<T>>() {
}.getType());
} catch (Exception e) {
}
return list;
} /**
* @param jsonString
* @return
*/
public static List<String> getList(String jsonString) {
List<String> list = new ArrayList<String>();
try {
Gson gson = new Gson();
list = gson.fromJson(jsonString, new TypeToken<List<String>>() {
}.getType());
} catch (Exception e) {
// TODO: handle exception
}
return list;
} public static List<Map<String, Object>> listKeyMaps(String jsonString) {
List<Map<String, Object>> list = new ArrayList<Map<String, Object>>();
try {
Gson gson = new Gson();
list = gson.fromJson(jsonString,
new TypeToken<List<Map<String, Object>>>() {
}.getType());
} catch (Exception e) {
// TODO: handle exception
}
return list;
}
}

Android JSON,Gson,fastjson实现比较的更多相关文章

  1. android Json Gson FastJson 解析

    一 Json xml <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:a ...

  2. Json,Gson,FastJson解析笔记

    Json,Gson,FastJson解析笔记 1.将JavaBean转换成Json对象: public static String CreatJsonFromObject(Object key,Obj ...

  3. android JSON解析 fastjson和gson的使用

    User user = new User(); user.setPhone("11111111"); user.setNmae("张三"); user.setP ...

  4. Android进阶笔记17:3种JSON解析工具(org.json、fastjson、gson)

    一. 目前解析json有三种工具:org.json(Java常用的解析),fastjson(阿里巴巴工程师开发的),Gson(Google官网出的),其中解析速度最快的是Gson. 3种json工具下 ...

  5. Android JSON解析库Gson和Fast-json的使用对比和图书列表小案例

    Android JSON解析库Gson和Fast-json的使用对比和图书列表小案例 继上篇json解析,我用了原生的json解析,但是在有些情况下我们不得不承认,一些优秀的json解析框架确实十分的 ...

  6. Android进阶笔记14:3种JSON解析工具(org.json、fastjson、gson)

    一. 目前解析json有三种工具:org.json(Java常用的解析),fastjson(阿里巴巴工程师开发的),Gson(Google官网出的),其中解析速度最快的是Gson. 3种json工具下 ...

  7. [转] 各种Json解析工具比较 - json-lib/Jackson/Gson/FastJson

    JSON技术的调研报告 一 .各个JSON技术的简介和优劣1.json-libjson-lib最开始的也是应用最广泛的json解析工具,json-lib 不好的地方确实是依赖于很多第三方包,包括com ...

  8. Android json 数据解析

    1.json格式 2.json解析 3.gson解析 4.fastjson解析 一.Json格式 json一种轻量级的数据交换格式.在网络上传输交换数据一般用xml, json. 两种结构: 1)对象 ...

  9. 生成JSON数据--fastjson(阿里)方法

    fastjson(阿里)方法生成JSON数据: 与Gson类似,创建相应类,再使用JSON.toJSONString()添加对象 要求:生成如下JSON数据 1.{"age":3, ...

随机推荐

  1. Info.plist与Prefix.pch修改文件位置遇到的问题及解决方法

    如果要更改Info.plist与Prefix.pch文件实际路径,也就是实际文件的位置(不是在工程中的组织路径),需要到Build Settings中修改对应的配置,不然工程就找不到对应的Info.p ...

  2. SDN:软件定义网络

    近期高级网络课的小组任务是在老师给定的范围内自选方向主题研究并做展示报告.我们组选了sdn.原以为这东西会是工业界无人问津的概念化产品,Google了一下却发现事实上sdn挺火的,因为它可能带来的可扩 ...

  3. VIPServer VS LVS

    http://www.cnblogs.com/nanyangzp/p/5552725.html

  4. GCOV 使用用例

      1.GCOV查看arm-linux代码覆盖率 一.           关于gcov工具 gcov伴随gcc 发布.gcc编译加入-fprofile-arcs -ftest-coverage 参数 ...

  5. iOS 开发-单元测试

    前言 维基百科对单元测试的定义如下: 在计算机编程中,单元测试(英语:Unit Testing)又称为模块测试, 是针对程序模块(软件设计的最小单位)来进行正确性检验的测试工作.程序单元是应用的最小可 ...

  6. Codeforces 540D Bad Luck Island - 概率+记忆化搜索

    [题意] 一个岛上有三种生物A,B,C,各有多少只在输入中会告诉你,每种最多100只 A与B碰面,A会吃掉B, B与C碰面,B会吃掉C, C与A碰面,C会吃掉A...忍不住想吐槽这种环形食物链 碰面是 ...

  7. 9.16noip模拟试题

    题目描述 在幻想乡,东风谷早苗是以高达控闻名的高中生宅巫女.某一天,早苗终于入手了最新款的钢达姆模型.作为最新的钢达姆,当然有了与以往不同的功能了,那就是它能够自动行走,厉害吧(好吧,我自重).早苗的 ...

  8. poj 1780 code(欧拉路)

    /* 对于n为密码想要序列最短 那么 1234 2345 这两个一定挨着 就是说 前一个的后n-1位是后一个的前n-1位 假设n==3 我们用0-99作为点的编号建图 然后每个点连出去10条边 两个相 ...

  9. 使用ajax与服务器通信的步骤

    使用ajax与服务器通信的步骤: 1. 创建一个XMLHttpRequest对象 2. 创建url,data,通过xmlHttpRequest.send() 3. 服务器端接收ajxa的请求,做相应处 ...

  10. Volley框架使用(POST)

    需要在MyApplication(继承Application)中配置; public static RequestQueue requestQueue; @Override public void o ...