使用动态对象值创建POJO模型

时间:2017-02-13 10:24:50

标签: java android json gson

我有一个来自JSON的3个对象值,第二个对象是动态值,即它可以是数组或对象。所以它看起来像这样:

public partial class Form2 : Form
{
    ArrayList hop2 = new ArrayList();
    private readonly Form1 m_parentForm;
    public Form2(Form1 parentForm)
    {
        InitializeComponent();        

        m_parentForm = parentForm;
    }
    private void Form2_Load(object sender, EventArgs e)
    {
        hop2.Add("2016");

        if (hop2[1] == m_parentForm.hop[1])
            MessageBox.Show("equal");
        else
            MessageBox.Show("not equal");
    }
}

所以,我的问题是如何在POJO课程中实现这一目标?我在这种情况下使用GSON。它将在Android端实现,我正在使用网络库的改造。对POJO课程的任何建议?或者我必须使用手动String对象并逐个解析?

1 个答案:

答案 0 :(得分:1)

如果Object可以与Array中的元素具有相同的类型,则只需使它始终是Java类中的数组。如果没有,那么您将需要使用Object类并将其转换为您想要的类型。

您还可以使用此工具自动生成POJO:http://www.jsonschema2pojo.org/ 您甚至可以将其设置为可序列化,可分区化等。只需检查Gson并预览,看看课程是否符合您的喜好。