如何将迭代器中的值存储到局部变量?

时间:2017-01-08 06:05:13

标签: java iterator

我的输出是:

if (holder.user.getUsername().equals(m.getUsername())) {
        RelativeLayout.LayoutParams params = (RelativeLayout.LayoutParams)message_text.getLayoutParams();
        params.addRule(RelativeLayout.ALIGN_PARENT_RIGHT);
        message_text.setLayoutParams(params);
    }

我想取" id"的价值并将其存储在局部变量中。 我该如何存储价值。

我的代码是:

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]}

2 个答案:

答案 0 :(得分: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");

}

答案 1 :(得分:0)

您正在使用org.json.simple.JSONObject implements java.util.Map。所以我认为你需要做这样的事情:

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