Android自定义Comparator,实现List按时间排序
2015-01-15 13:59
393 查看
package com.suntek.mobilemeeting.comparator;
import java.util.Comparator;
import com.suntek.mobilemeeting.model.User;
/**
* 根据用户离线时间定制的比较器
*
* @author by wwj
*
*/
public class OfflineUserComparator implements Comparator {
@Override
public int compare(Object obj1, Object obj2) {
User user1 = (User) obj1;
User user2 = (User) obj2;
int flag = user2.getLeftTime().compareTo(user1.getLeftTime());
return flag;
}
}
这样使用:
[java] view
plaincopy
// 离线
JSONArray offlineArray = json
.optJSONArray(StringUtil.RES_OFF_USER_INFO);
offlineUsers.clear();
for (int i = 0; offlineArray != null
&& i < offlineArray.length(); i++) {
JSONObject temp = (JSONObject) offlineArray.get(i);
User user = new User();
user.setUserId(temp.optString(StringUtil.USER_USERID));
user.setSerialNo(temp
.optString(StringUtil.USER_SERIAL_NO));
user.setUserName(temp.optString(StringUtil.USER_NAME));
user.setTelephone(temp
.optString(StringUtil.USER_TELEPHONE));
user.setStatus(-1);
user.setJoinDateTime(temp
.optString(StringUtil.USER_JOIN_DATE_TIME));
user.setLeftTime(temp
.optString(StringUtil.USER_LEFT_TIME));
user.setGroupNo(temp.optInt(StringUtil.USER_GROUP_NO));
user.setSubConfName(temp
.optString(StringUtil.USER_SUB_CONF_NAME));
offlineUsers.add(user);
}
OfflineUserComparator offlineUserComparator = new OfflineUserComparator();
Collections.sort(offlineUsers, offlineUserComparator);
import java.util.Comparator;
import com.suntek.mobilemeeting.model.User;
/**
* 根据用户离线时间定制的比较器
*
* @author by wwj
*
*/
public class OfflineUserComparator implements Comparator {
@Override
public int compare(Object obj1, Object obj2) {
User user1 = (User) obj1;
User user2 = (User) obj2;
int flag = user2.getLeftTime().compareTo(user1.getLeftTime());
return flag;
}
}
这样使用:
[java] view
plaincopy
// 离线
JSONArray offlineArray = json
.optJSONArray(StringUtil.RES_OFF_USER_INFO);
offlineUsers.clear();
for (int i = 0; offlineArray != null
&& i < offlineArray.length(); i++) {
JSONObject temp = (JSONObject) offlineArray.get(i);
User user = new User();
user.setUserId(temp.optString(StringUtil.USER_USERID));
user.setSerialNo(temp
.optString(StringUtil.USER_SERIAL_NO));
user.setUserName(temp.optString(StringUtil.USER_NAME));
user.setTelephone(temp
.optString(StringUtil.USER_TELEPHONE));
user.setStatus(-1);
user.setJoinDateTime(temp
.optString(StringUtil.USER_JOIN_DATE_TIME));
user.setLeftTime(temp
.optString(StringUtil.USER_LEFT_TIME));
user.setGroupNo(temp.optInt(StringUtil.USER_GROUP_NO));
user.setSubConfName(temp
.optString(StringUtil.USER_SUB_CONF_NAME));
offlineUsers.add(user);
}
OfflineUserComparator offlineUserComparator = new OfflineUserComparator();
Collections.sort(offlineUsers, offlineUserComparator);
相关文章推荐
- Android记录14--自定义Comparator,实现List按时间排序
- Android记录14--自定义Comparator,实现List按时间排序
- 使用Comparable、Comparator接口实现对对象数组、List集合自定义排序
- 实现Comparator接口对List重排序,List实现分页
- Android实现自定义的 时间日期 控件
- android collection.sort()根据时间排序list
- java Collections.sort()实现List排序的默认方法和自定义方法
- 实现List<>自定义排序
- 利用自定义特性实现List的多属性排序
- JAVA中Collections.sort()实现List排序的公共方法和自定义方法
- java Collections.sort()实现List排序的默认方法和自定义方法
- android自定义日期和时间选择对话框得实现
- 利用反射 和 comparator 实现List 的简单排序
- java Collections.sort()实现List排序的默认方法和自定义方法
- java Collections.sort()实现List排序的默认方法和自定义方法
- android 学习笔记:自定义通用ListView/GridView,实现ListAdapter 类
- java中的list自定义排序以及倒排序的实现
- android List按时间排序
- JAVA类中如何利用Comparator实现自定义排序
- Java编程之TreeSet排序两种解决方法(1)元素自身具备比较功能,元素需要实现Comparable接口覆盖compare(2)创建根据自定义Person类的name进行排序的Comparator