我尝试将两个arraylist添加到单个arraylist中。所有arraylist对象类型都不同。
这里是我的两个arraylist-
ArrayList<NewsItem> topnewslist=new ArrayList<>();
ArrayList<LatestNewsInfo> latestnewslist=new ArrayLis();
ArrayList<AllNewsInfo> allnewslist=new ArrayList<>();// add here
// I try this
allnewslist.addAll(topnewslist); // not add bcoz differnt type of object
allnewslist.addAll(latestnewslist); //not add bcoz differnt type of object
//注意:所有对象数据模型值都相同。
什么是最佳解决方案??
答案 0 :(得分:6)
ArrayList<Object> allnewslist=new ArrayList<>();
。
理想情况下,NewsItem
和LatestNewsInfo
都应该继承公共接口,然后您可以拥有此接口的列表。
interface News{} //can be an abstract class
class NewsItem implements News{
}
class LatestNewsInfo implements News{
}
//edit - define variables to interface instead of actual implementation object
List<News> allnewslist=new ArrayList<>();