首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Gson :迭代fromJson结果

Gson :迭代fromJson结果
EN

Stack Overflow用户
提问于 2011-06-07 20:57:16
回答 1查看 2.4K关注 0票数 1

语言: Java和Gson

解析了JSON数组之后,我该如何:

2)遍历其内容?

例如,下面是我的代码:

代码语言:javascript
复制
String JSInput = "//Json String";
Type listType = new TypeToken<TabClass[]>() {}.getType();
Input_String =GsonObject.fromJson(JSInput, listType);
System.out.println(Input_String.toString());

代码语言:javascript
复制
class TabClass{
String Name;
String Parent;
public String getName() {
    return Name;
}
public String getParent() {
    return Parent;
}
public void setName(String Name) {
    this.Name = Name;
}
public void setParent(String Parent) {
    this.Parent = Parent;
}

}

上面的代码只返回对象的描述及其内存位置:

代码语言:javascript
复制
[Lcom.example.projectname.TabClass;@1fbfd6

如何打印结果对象的内容,或者对其进行迭代?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2011-06-08 04:20:54

没有必要只为数组创建TypeToken。Gson可以很好地反序列化为数组类型。

如果您有一个数组,那么您不必显式地遍历它的内容来打印。您可以使用Arrays.toString()方法之一。

下面是一个例子。

代码语言:javascript
复制
// output:
// [{value1=one, value2=1}, {value1=two, value2=2}, {value1=three, value2=3}]

import java.util.Arrays;

import com.google.gson.Gson;

public class Foo
{
  public static void main(String[] args)
  {
    Gson GsonObject = new Gson();

    String JSInput = "[{\"value1\":\"one\",\"value2\":1},{\"value1\":\"two\",\"value2\":2},{\"value1\":\"three\",\"value2\":3}]";
    TabClass[] Input_String = GsonObject.fromJson(JSInput, TabClass[].class);
    System.out.println(Arrays.toString(Input_String));
  }
}

class TabClass
{
  private String value1;
  private int value2;

  @Override
  public String toString()
  {
    return String.format(
        "{value1=%s, value2=%d}",
        value1, value2);
  }
}

否则,如果您更愿意显式地遍历数组的各个组件,那么对于Java,您有几个选择。一个简单的方法是使用for-each循环结构。

代码语言:javascript
复制
for (TabClass tab : Input_String)
{
  System.out.println(tab);
}

(顺便说一句,对于这个TabClass数组来说,"Input_String“不是一个好名字。更具描述性的名称可能是“tabs”。)

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/6265496

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档