根据list<Object>中的某个字段排序
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>中的某个字段排序的更多相关文章
- 【HOW】如何对Reporting Services表格中数据按字段排序
Reporting Services中可以设置排序的地方非常多,有很多地方从其字面意思上好像是对表格数据的排序,但实际都不管用.在多次尝试后,得到如下的有效设置方式: 1. 鼠标右键单击要排序字段的内 ...
- java的list集合如何根据对象中的某个字段排序?
转自:http://blog.csdn.net/wangjuan_01/article/details/51351633 List集合按某个字段排序 package wjtest_01; import ...
- struct放入list中按照某字段排序
//管线字段信息 public struct FieldInfo { public int iID; //编号 public string sFieldName; //字段名 public strin ...
- mysql中按string字段排序
如: Sql代码SELECT * FROM Student WHERE 1 = 1 ORDER BY -ID DESC或者: Sql代码SELECT * FROM Student WHERE 1 = ...
- js 根据json数组中n个字段排序
function compare(name, minor) { return function (o, p) { var a, b; if (o && p && typ ...
- java List<Item> its=new ArrayList<Item>(); Map按value中的某字段排序
public List<Item> getAllItem(){ Map<Long, Item> itemDic = new HashMap<Long, Item>( ...
- java中对List<Map<String,Object>>中的中文汉字排序
import java.text.Collator;import java.util.ArrayList;import java.util.Collections;import java.util.C ...
- 根据map中某一字段排序
以上是从小到大的排序...要注意.! 需要jdk8...
- APEX:对object中数据进行简单处理?
在Salesforce中,常常要对各种数据进行处理,已满足业务逻辑.本篇文章会介绍如何实现从object获取数据,然后将取得的数据进行一系列简单处理. 第一步:SongName__c 是一个新建的ob ...
随机推荐
- oracle监听服务开启
输入命令netca即可开启oracle的监听服务 弹出对话框 选择监听服务配置,单击下一步 选择增加监听,单击下一步 监听的名字,默认即可,下一步 监听链接的协议,默认TCP协议即可,下一步 监听默认 ...
- c# 鼠标操作
1#region 3using System; 4using System.Runtime.InteropServices; 6#endregion 8namespace Windows.Forms. ...
- (转)[老老实实学WCF] 第一篇 Hello WCF
http://blog.csdn.net/songyefei/article/details/7363296#comments 老老实实学WCF 第一篇 Hello WCF WCF(Windows ...
- 《第一行代码》学习笔记3-活动Activity(1)
1.活动-一种可以包含用户界面的组件,用于和用户进行交互. <Button android:id="@+id/button_1" android:layout_width=& ...
- Silverlight Visifire控件应用去水印
版本几之前可以用属性直接去掉水印: chart.Watermark = false; 现在我用的会报错,已过时,在网上查了写资料,解决办法如下: 一.很多人都是利用摭罩的办法,定位到水印显示的地方,建 ...
- gitosis随记
0.创建git用户 useradd -m git passwd git 1.安装脚本工具(gitosis依赖python) apt-get install python-setuptools 2.gi ...
- HTML5开发入门经典教程和案例合集(含视频教程)
HTML5作为下一代网页语言,对Web开发者而言,是一门必修课.本文档收集了多个HTML5经典技术文档(HTML5入门资料.经典)以及游戏开发案例以及教学视频等,帮助同学们掌握这门重要的技术. 资源名 ...
- NoSql中的B-tree、B+tree和LSM-tree
总结: 1.B+树将数据完全排序,读数据时很快,但当要修改数据时,就需要将新入数据下面的数据重新排位,特别是当写入的数据排在较高的位置时,需要大量的移位操作才能完成写入. 2.SLM牺牲部分的读性能, ...
- Linux上安装JDK
1.下载rpm文件并安装 rpm -ivh jdk-7u51-linux-x64.rpm 2.修改/etc/profile文件,增加以下配置 export JAVA_HOME=/usr/java/jd ...
- 【干货】.NET开发通用组件发布(三) 简易数据采集组件
组件介绍和合作开发 http://www.cnblogs.com/MrHuo/p/MrHuoControls.html 简易数据采集组件 怎么说他是一个简易的数据采集组件呢?因为由于时间仓促,缺少从某 ...