[英]Combine Two different Array List and sort based on time
我有两个Diffrent ArrayList
可以说:
ArrayList<model_tasks_pending> Tasks = new ArrayList<model_tasks_pending>();
ArrayList<model_task> data = new ArrayList<model_task>();
现在,我想将这两个数组列表合并为一个,并访问其中的每个数据。 这就是我尝试过的
private List<Object> Data = new ArrayList<>();
Data.addAll(Tasks);
Data.addAll(data);
这样就可以将所有数据放入新的列表中。 但是我如何访问其中的数据? 可以说我要在Tasks
访问get_creat_on()
Data.get(0).get_creat_on()
但显示错误cannot resolve get_creat_on()
另外,将两个Arraylist
合并后,我想根据时间对它们进行排序。 我在Arraylist
都有_time
对象,它以这种格式08:33 AM
返回时间。 任何公会如何实现这一目标?
模态类别:
model_task.java
public class model_task {
int _id;
String _title;
String _body;
String _time;
public String get_time() {
return _time;
}
public int get_id() {
return _id;
}
public String get_title() {
return _title;
}
public String get_body() {
return _body;
}
}
model_tasks_pending.java
public class model_tasks_pending{
int _id;
String _title;
String _creat_on;
String _time;
public String get_time() {
return _time;
}
public String get_creat_on() {
return _creat_on;
}
public int get_id() {
return _id;
}
public String get_title() {
return _title;
}
public String get_body() {
return _body;
}
}
首先:请遵循Java命名约定 。 类应以大写字母开头,变量以小写字母开头。
除了_
允许,但不建议使用。
关于你的问题。
将特定类的实例存储在“ Object
List
中会破坏使用泛型的目的。
如果要存储和排序model_tasks_pending
和model_tasks
两个实例, model_tasks_pending
根据接口进行推理。
为所有必需的方法引入一个通用接口,并使这些类实现它。
这样,您可以替换:
private List<Object> Data = new ArrayList<>();
创建人:
private List<MyModelTask> Data = new ArrayList<>();
其中MyModelTask
是公共接口。
这样,您可以访问MyModelTask
定义的任何方法,并且可以通过定义Comparator
来对MyModelTask
进行排序,如果要对两个类的实例进行排序,则可以更具体地定义Comparator<MyModelTask>
。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.