具有可变字段的Pojo类

时间:2018-11-11 04:09:00

标签: java android

我正在尝试为recyclerview开设pojo课程。

我从json获取的数据将是这样。

newsfeeddata:{ id:"",
  timestamp:"",
  userdetails:{
     id:""
     profile_pic_url:"",
     name:""
  },
  post:{ (optional)
    id:""
    text:"" 
  },
  media :{ (optional)
    id:""
    url:""
  }
}

在某些对象中将存在“ post”,而在其他对象中将具有“ media”而不是“ post”。我该如何做一个pojo课程?

1 个答案:

答案 0 :(得分:2)

userdetailspostmedia创建单独的类。并将它们用作newsfeeddata类中的实例变量。

public class Post {
    public String id;
    public String text;
}

public class Userdetails {
    public String id;
    public String profile_pic_url;
    public String name;
}

public class Media {
    public String id;
    public String url;
}

现在在您的newsfeeddata类中使用这些实例。

public class Newsfeeddata {

    public String id;
    public String timestamp;
    public Userdetails userdetails;
    public Post post;
    public Media media;

}

注意:

  1. 您可以将access-modifier更改为private并使用getter和setter。了解有关lombook数据注释的信息。使用类上方的单个@Data注释,您可以拥有所有的getter,setter,toString实现等。使您的课程简洁明了。

  2. 您可能要更改字段的数据类型。为简单起见,我使用了String