Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/192.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 为适配器排序日期字符串_Java_Android - Fatal编程技术网

Java 为适配器排序日期字符串

Java 为适配器排序日期字符串,java,android,Java,Android,我有一个自定义对象,从中可以以字符串的形式获取日期和时间。 这是一个循环 List<MyObj> objs = getActivity().getPreferences().getData(activity); for (MyObj myob : objs) { int pos = adapter.contains(myob.id); if (pos == -1) { data = new MyAdapter.MyData(); data.

我有一个自定义对象,从中可以以字符串的形式获取日期和时间。 这是一个循环

List<MyObj> objs = getActivity().getPreferences().getData(activity);
for (MyObj myob : objs) {

int pos = adapter.contains(myob.id);
 if (pos == -1) {
          data = new MyAdapter.MyData();
          data.myob = myob;
          adapter.addItem(data);

         }
         else {
           data = adapter.getItem(pos);
              data.myob = myob;
         }

//Sorting to be done here... I get date from data.myob.date which returns String as 22.05 12:45
//After sorting, I need to notify the adapter.

adapter.notifyDataSetChanged();

}
List objs=getActivity().getPreferences().getData(活动);
for(MyObj myob:objs){
int pos=适配器包含(myob.id);
如果(位置==-1){
data=new MyAdapter.MyData();
data.myob=myob;
adapter.addItem(数据);
}
否则{
数据=适配器.getItem(pos);
data.myob=myob;
}
//要在这里进行排序…我从data.myob.date获取日期,它返回字符串22.0512:45
//排序之后,我需要通知适配器。
adapter.notifyDataSetChanged();
}
现在我需要按照升序和降序对自定义对象中的日期进行排序。 我该怎么做呢?

试试这个

Collections.sort(yourList, new Comparator<CustomClass>() {
                        @Override
                        public int compare(CustomObject o1, CustomObject o2) {

                            DateFormat date = new SimpleDateFormat("dd MMM yyyy");
                            Date d1 = null, d2 = null;
                            try {
                                d1 = date.parse(o1.get_date().toString());
                                d2 = date.parse(o2.get_date().toString());

                            } catch (ParseException e) {
                                e.printStackTrace();
                            }

                            //return o1.get_date().compareTo(o2.get_date());
                            return d1.compareTo(d2);
                        }
                    });
Collections.sort(yourList,newcomparator(){
@凌驾
公共整数比较(CustomObject o1、CustomObject o2){
DateFormat日期=新的简化格式(“dd MMM yyyy”);
日期d1=null,d2=null;
试一试{
d1=date.parse(o1.get_date().toString());
d2=date.parse(o2.get_date().toString());
}捕获(解析异常){
e、 printStackTrace();
}
//返回o1.get_date().compareTo(o2.get_date());
返回d1。比较(d2);
}
});

Collections.sort()..你能给我举个例子吗??