JSONObject、JSONArray

來源:互聯網
上載者:User

標籤:c   style   class   blog   code   java   

   最近兩個星期接觸最多的就是json和map了。

   之前用到的json,就是一個鍵對應一個值,超級簡單的一對一關聯性。現在用到的json那可以層層嵌套啊,剛開始接觸的時候,確實有種崩潰的趕腳,不想去理,取個資料還那麼麻煩。其實,就跟if else語句一樣,如果if中套if,if中再套if,寫的規範了還行,要是代碼格式不規範,那我們肯定也看著麻煩。所以啊,對於json嵌套,只要記住符號“:”前是鍵,符號後是值大括弧成對找,一層層剝開,就清楚了。 舉個例子說明,如下:


      從外到裡看,例子中就是一個數組,數組裡面是兩個json格式的字串。這樣分析思路就清晰多了。

    工作中需要取出name4的值,你們會怎麼取呢?。最初我都想過字串截取,那時還不瞭解JSONArray,現在知道了,取出來也就相當容易了。


    取出name4值過程步驟:1,將以上字串轉換為JSONArray對象;2,取出對象的第一項,JSONObject對象;3,取出name1的值JSONObject對象;4,取出name2的值JSONObject對象;5,取出name4的值value2。

    樣本中json數組格式的字串可以通過方法直接轉換為JSONArray的格式:JSONArray.fromObject(String)

</pre><pre name="code" class="java">JSONArray getJsonArray=JSONArray.fromObject(arrayStr);//將結果轉換成JSONArray對象的形式JSONObject getJsonObj = getJsonArray.getJSONObject(0);//擷取json數組中的第一項String result=getJsonObj.getJSONObject("name1").getJSONObject("name2").getJSONObject("name4");

   好了我們說說這兩個對象。

1,JSONObject

 json對象,就是一個鍵對應一個值,使用的是大括弧{ },如:{key:value}

2,JSONArray

  json數組,使用中括弧[ ],只不過數組裡面的項也是json鍵值對格式的


  Json對象中添加的是鍵值對,JSONArray中添加的是Json對象

JSONObject Json = new JSONObject();JSONArray JsonArray = new JSONArray();Json.put("key", "value");//JSONObject對象中添加索引值對JsonArray.add(Json);//將JSONObject對象添加到Json數組中

3,JSONObject與Map

   Map map和json都是鍵值對,不同的是map中鍵值對中間用等號分開,json中鍵值對中間用冒號分開。其實json就是一種特殊形式的map。

Map<String,String> strmap=new JSONObject();

  這裡的需求是:request對象擷取的map,想要返回json格式也不用白費力了。。。。哈哈。。


  現在我可以說對map,json很瞭解,當初學習那會,可以說提到map就頭疼,我嫌麻煩,對map和json會簡單應用了就過了。現在工作了又撿起來重新學習了一次。出來混,早晚問題都是你的,哈哈。。。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.