Jmeter11-Beanshell的學習3-類

JSONObject

JSONObject的數據是用 { } 來表示的。

例如:{"id":"123","name":"cor"...}

JSONArray

JSONArray是由JSONObject構成的數組,用 [ { } , { } , ...... , { } ] 來表示。

例如:[{"name":"女","number":"17,001","value":63.72},{"name":"男","number":"4,362","value":16.35},{"name":"未知","number":"5,317","value":19.93}]

從字符串String獲取JSONObject對象和JSONArray對象

JSONObject obj= new JSONObject (String str);

JSONArray ary = new JSONArray(String str ) ;

如何從JSONArray中獲得JSONObject對象

JSONObject obj= jsonArray.getJSONObject(n); //n在數組中的位置,是從0開始;

獲取JSON內的數據

int data=jsonObject.getInt(key);//如果key值對應的value是int類型時;

String str= jsonObject.getSring(key);//如果key值對應的value是String類型時;

例子:

Jmeter11-Beanshell的學習3-類

import org.json.*;

import java.io.IOException;

int n,i;

String jsonstr="{"code":1,"data":{"column":["女","男","未知"],"columnData":[{"name":"女","number":"17,001","value":63.72},{"name":"男","number":"4,362","value":16.35},{"name":"未知","number":"5,317","value":19.93}]}}";

JSONObject js_obj=new JSONObject(jsonstr);//將字符串轉換成json

JSONArray js_ary=js_obj.get("data").get("columnData");//columnData是一個數組,將它提取出來,並賦給數組對象

n=js_ary.length();//數組的長度

System.out.println(n);

for(i=0;i

{

JSONObject js_data=js_ary.getJSONObject(i);//獲取數組的第i個Json;

System.out.println(js_data.toString());

String name=js_data.getString("name");//獲取提取出來的json中,key值為name的值;

String num=js_data.getString("number");//獲取提取出來的json中,key值為number的值;

Double value=js_data.getDouble("value");//獲取提取出來的json中,key值為value的值;key值為double類型

System.out.println("提取出來的第"+i+"個json的值為:name="+name+" number="+num+" value="+value);

}

運行結果:

Jmeter11-Beanshell的學習3-類


分享到:


相關文章: