2017-01-08 21 views
-1

私の出力は次のとおりです。イテレータの値をローカル変数に格納する方法はありますか?

I/System.out: Iterator values :{"name":"SMhack","permittedUsers":[1,2,3,4,5,6],"id":2,"profilesAttached":[1,2,3,4,5,6,8,12,13,14,15,16,17,18,19,20,21,24,25,26,27,28,29,30,31]} 

私が「ID」の値を取得し、ローカル変数に格納します。 どのように私は値を格納することができます。

私のコードは次のとおりです。

Iterator<JSONObject> iterator = org.iterator(); 
      while (iterator.hasNext()) 
      { 
       System.out.println("Iterator values :"+iterator.next()); 

       //here i want to store the value from iterator to be stored to a local variable named (org_id).  

      } 

答えて

0

あなたはどのimplements java.util.Maporg.json.simple.JSONObjectを使用しています。だから私は、あなたがこのような何かを行う必要がありますと思う:

Iterator<JSONObject> iterator = org.iterator(); 
while (iterator.hasNext()) 
{ 
    JSONObject obj = iterator.next(); 
    int orgId = (int) obj.get("id"); 
    // Do something with orgId 
} 
+0

のgetInt( "ID")を。 //エラーを表示しているのでメソッドを解決できません。 –

+0

あなたはどんなJSONライブラリを使用していますか?あなたのコードに 'import'文を含めることができますか? JSONクラスを参照するもの。 – dave

+0

import org.json.simple.JSONObject; import org.json.simple.parser.JSONParser; import org.json.simple.parser.ParseException; –

1

あなたはJSONObject.getInt()メソッドを使用することができます

Iterator<JSONObject> iterator = org.iterator(); 
while (iterator.hasNext()) { 
    JSONObject current = iterator.next(); 
    System.out.println("Iterator values : " + current); 

    int orgId = current.getInt("id"); 

} 
+0

'iterator.next()'を2回呼び出します。おそらく 'current'の値を' println'するべきでしょう。 – dave

+0

@daveはい、それは私が最初にやったことです。それを指摘してくれてありがとう。 –

+0

彼の次の質問は、イテレータループ外のローカル変数にアクセスする方法です。 – Barath

関連する問題