我有两个这样的列表:
List<Post> posts = Post.findAll();
List<Comment> comments = Comment.findAll();
我想将这两个组合成一个列表但是有两个映射,这样当它返回到客户端时,它将是一个带有两个带名称的对象的数组。
例如客户端上的输出:
Array:[posts:{...}, comments:{...}]
我如何在java中实现这一点?
我尝试将两个列表添加到新数组中,但效率不高,因为我需要在客户端循环遍历完整数组:
List<Post> posts = Post.findAll();
List<Comment> comments = Comment.findAll();
List listFinal = new ArrayList();
listFinal.addAll(posts);
listFinal.addAll(comments);
return listFinal;
答案 0 :(得分:1)
这是我的实现,我推广了n个列表。
st = s.length() < 3 ? s : s.charAt(0) + s.substring(1, s.length() - 1).replaceAll("e","") + s.charAt(s.length()-1);
答案 1 :(得分:0)
这不是最佳解决方案,但您可以创建一个具有Post
&amp;的新对象。其中Comment
。然后向其添加具有相同用户名Post
和Comment
的元素:
class PostData {
Post post;
Comment comment;
@Override
public String toString() {
return post.toString() + comment.toString();
}
}
然后创建该对象的列表:
List<PostData> postData = new ArrayList<>();