compareTo必须是两个对象之间的比较(比如Long,Integer...),
以下例子是升序排序
private void businessSort(List<WxDailyBusinessInfo> wxDailyBusinessInfo) {
      //排序前
for (int i = 0; i < wxDailyBusinessInfo.size(); i++) {
System.out.println(new Gson().toJson(wxDailyBusinessInfo.get(i)));
System.out.println("---------------");
}
Collections.sort(wxDailyBusinessInfo,
new Comparator<WxDailyBusinessInfo>() {
@Override
public int compare(WxDailyBusinessInfo o1,
WxDailyBusinessInfo o2) {
return o1.getDistance().compareTo(o2.getDistance());
}
});
System.out.println("***************排序后************");
for (int i = 0; i < wxDailyBusinessInfo.size(); i++) {
System.out.println(new Gson().toJson(wxDailyBusinessInfo.get(i)));
System.out.println("---------------");
}
}

compareTo()方法是用来比较字符串大小,该方法用来判断一个字符串是大于,等于还是小于另一个字符串。判断字符串大小的依据是根据他们在字典中的顺序决定的

语法

Str1.compareTo(Str2);

其返回的是一个int类型值。若str1等于str2字符串,则返回0;若str1按字典顺序小于字符串str2,则返回-1(小于0的值);若str1按字典顺序大于参数字符串str2,则返回值大于0

根据list<Object>中的某个字段排序的更多相关文章

  1. 【HOW】如何对Reporting Services表格中数据按字段排序

    Reporting Services中可以设置排序的地方非常多,有很多地方从其字面意思上好像是对表格数据的排序,但实际都不管用.在多次尝试后,得到如下的有效设置方式: 1. 鼠标右键单击要排序字段的内 ...

  2. java的list集合如何根据对象中的某个字段排序?

    转自:http://blog.csdn.net/wangjuan_01/article/details/51351633 List集合按某个字段排序 package wjtest_01; import ...

  3. struct放入list中按照某字段排序

    //管线字段信息 public struct FieldInfo { public int iID; //编号 public string sFieldName; //字段名 public strin ...

  4. mysql中按string字段排序

    如: Sql代码SELECT * FROM Student WHERE 1 = 1 ORDER BY -ID DESC或者: Sql代码SELECT * FROM Student WHERE 1 = ...

  5. js 根据json数组中n个字段排序

    function compare(name, minor) { return function (o, p) { var a, b; if (o && p && typ ...

  6. java List<Item> its=new ArrayList<Item>(); Map按value中的某字段排序

    public List<Item> getAllItem(){ Map<Long, Item> itemDic = new HashMap<Long, Item>( ...

  7. java中对List<Map<String,Object>>中的中文汉字排序

    import java.text.Collator;import java.util.ArrayList;import java.util.Collections;import java.util.C ...

  8. 根据map中某一字段排序

    以上是从小到大的排序...要注意.! 需要jdk8...

  9. APEX:对object中数据进行简单处理?

    在Salesforce中,常常要对各种数据进行处理,已满足业务逻辑.本篇文章会介绍如何实现从object获取数据,然后将取得的数据进行一系列简单处理. 第一步:SongName__c 是一个新建的ob ...

随机推荐

  1. python-线程、进程、协程

    进程 && 线程 进程:是内存中的一个独立的句柄,我们可以理解为一个应用程序在内存中就是一个进程. 各个进程之间是内存相互独立,不可共享的 线程:每个应用运行之后就会对应启动一个主线程 ...

  2. angularJS自定义过滤器、服务和指令

    自定义过滤器 mainApp.filter('mayfilter',function(){ return function(input){ (过滤逻辑代码) } });   自定义创建指令 mainA ...

  3. 解决 innerHTML 在 IE6-IE9中不能赋值的bug

    在MSDN可以了解跟多,关于innerHTML的介绍,但是在这里只要是解决表格部分问题 MSDN上有这样的记录: When using innerHTML to insert script, you ...

  4. Application 可以存储全局变量

    Application.Lock(); Application["Name"]="小亮" Application.UnLock(); Response.Writ ...

  5. Lucene文件扩展名

    名称 文件后缀 描述 段文件(Segments File) segments.gen segments_N 存储提交点信息 锁文件(Lock File) write.lock 用来阻止多个indexW ...

  6. 13 java 设计模式--单例模式

    /** * 单例 */ public class JobSchedulerService { //防止类外部通过new实例化该类 private JobSchedulerService() { } / ...

  7. C# 窗体程序入门 之计算器

    之前一直在java的B/S,这次被要求做一个C/S,其中客户端主要是界面和socket通信.因为没有使用过C#和Visual Studio的控件编程,先来个HelloWorld. 我的环境是visua ...

  8. C/C++中的switch使用

    代码: #include <iostream> #include <string> #include <cstdio> using namespace std; i ...

  9. Installation error: INSTALL_CANCELED_BY_USER

    这个错误,从字面上理解,就是已经安装的时候被用户取消了. 我出现这个错误的时候,是手机连接在电脑上的. 经过网上搜索,确认这是安装apk到手机时,被手机取消了安装操作. 1. 确保手机处于开发者模式. ...

  10. log4j配置文件及nutch中的日志配置

    使用slf4j作为日志系统时,由于slf4j只是一个接口,它需要一个具体实现来执行. 具体参考http://blog.csdn.net/jediael_lu/article/details/43854 ...