1、排序测试类

package com.ljq.test;

import java.util.ArrayList;
import java.util.Collections;
import java.util.Comparator;
import java.util.List; public class UserSort { public static void main(String[] args) {
List<User> userList =new ArrayList<User>();
userList.add(new User(1,2.2));
userList.add(new User(2,1.1));
userList.add(new User(3,4.4));
userList.add(new User(4,5.5));
userList.add(new User(5,3.3)); Collections.sort(userList, new Comparator<User>() {
public int compare(User u1, User u2) {
return new Double(u1.getSalary()).compareTo(new Double(u2.getSalary())); //升序
// return new Double(u2.getSalary()).compareTo(new Double(u2.getSalary())); //降序
}
}); for(User user : userList){
System.out.println(user);
}
}
}

2、User对象,存储javabean属性

package com.ljq.test;

import java.io.Serializable;

/**
* 用户
*
* @author jqlin
*/
public class User implements Serializable{
private static final long serialVersionUID = 1L; private long id; // 主键
private double salary; // 薪资 public User() { } public User(long id, double salary) {
super();
this.id = id;
this.salary = salary;
} public long getId() {
return id;
} public void setId(long id) {
this.id = id;
} public double getSalary() {
return salary;
} public void setSalary(double salary) {
this.salary = salary;
} @Override
public String toString() {
return "User [id=" + id + ", salary=" + salary + "]";
} }

3、多字段排序,基本数字类型要用封装数字类型才可以排序,如:new Double()

        Collections.sort(dataList, new Comparator<OrderVO>(){
public int compare(OrderVO a, OrderVO b) {
//先按期号降序,如果期号相同按玩法名称降序,如果玩法名称相同按投注时间降序
int result = b.getCreateTime().compareTo(a.getCreateTime());
if(result == Zero.INT){
return new Integer(a.getSort()).compareTo(new Integer(b.getSort()));
}else{
return result;
}
}
});

Java Collections.sort方法对list集合排序的更多相关文章

  1. java中sort方法的自定义比较器写法(转载)

    java中sort方法的自定义比较器写法 摘要 在做一些算法题时常常会需要对数组.自定义对象.集合进行排序. 在java中对数组排序提供了Arrays.sort()方法,对集合排序提供Collecti ...

  2. 用Java集合中的Collections.sort方法对list排序的两种方法

    用Collections.sort方法对list排序有两种方法第一种是list中的对象实现Comparable接口,如下: ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 ...

  3. java中Collections.sort()方法实现集合排序

    1.Integer/String泛型的List进行排序 List <Integer> integerlist = new ArrayList<Integer>();   //定 ...

  4. Java中使用Collections.sort()方法对数字和字符串泛型的LIst进行排序

    在List的排序中常用的是Collections.sort()方法,可以对String类型和Integer类型泛型的List集合进行排序. 首先演示sort()方法对Integer类型泛型的List排 ...

  5. java Collections.sort()

    sort()是Collections中的静态方法,用于对List容器中的元素排序. 如容器list中存储的是Integer对象 List<Integer> list =Arrays.asL ...

  6. Java基础集锦——利用Collections.sort方法对list排序

    要想对List进行排序,可以让实体对象实现Comparable接口,重写compareTo方法即可实现按某一属性排序,但是这种写法很单一,只能按照固定的一个属性排序,没变法变化.通过下面这种方法,可以 ...

  7. java Collections.sort()实现List排序的默认方法和自定义方法

    1.java提供的默认list排序方法 主要代码: List<String> list = new ArrayList();list.add("刘媛媛"); list. ...

  8. java Collections.sort()实现List排序的默认方法和自定义方法【转】

    1.java提供的默认list排序方法 主要代码: List<String> list = new ArrayList();list.add("刘媛媛"); list. ...

  9. Collections.sort方法对list排序的两种方式

    Collections.sort( )分为两部分,一部分为排序规则,一部分为排序算法 . 规则用来判断对象,算法则考虑如何进行排序 对于自定义对象,sort()不知道规则,所以无法比较,这种情况下一定 ...

随机推荐

  1. ubuntu14.04 安装 搜狗输入法

    1.安装或者更新fcitx libssh2-1:sudo  apt-get install fcitx libssh2-1; 2.搜索是否安装成功: dpkg -l | grep fcitx ; dp ...

  2. PDA手持机 移动开单进销存系统 现场出打印凭据和扫码 新的亮点

    传统车销模式弊端:1.手写开单,效率低,动作慢2.现场手写开单明细不能打印,产品明细不规范3.电脑办公人员及车销人员对车上的库存情况掌握不清楚,销售人员对每种产品销售价格不清楚4.老板对员工工作的管控 ...

  3. unity 利用ugui 制作技能冷却效果

    using System.Collections; using System.Collections.Generic; using UnityEngine; using UnityEngine.UI; ...

  4. maven中把依赖的JAR包一起打包

    <buizld> <plugins> <plugin> <artifactId>maven-assembly-plugin</artifactId ...

  5. img只显示图片一部分 或 css设置背景图片只显示图片指定区域

    17:14 2016/3/22img只显示图片一部分 或 css设置背景图片只显示图片指定区域 background-position: 100% 56%; 设置背景图片显示图片的哪个坐标区域,图片左 ...

  6. 2632: [neerc2011]Gcd guessing game

    2632: [neerc2011]Gcd guessing game Time Limit: 10 Sec  Memory Limit: 128 MBSubmit: 144  Solved: 84[S ...

  7. Qt下的udp编程

    项目需要一个基于udp的客户端, 看着Qt是有个QUdpSocket的类的, 但自带的例子和类的说明都没咋说明白: 怎么用一个QUdpSocket既当发送端, 又当接收端? 谷歌一顿后, 发现很多老内 ...

  8. ejoy2d源码阅读笔记1

    一直想学lua,学它如何与C结合来作逻辑,所以找了云风的一份代码来研究.这份代码是个框架库,叫ejoy2d,据云风的博客说,他们最新的手机游戏用的就是这套框架,所以实用性应该很强,虽然我不是学游戏的, ...

  9. (转)python requests的安装与简单运用

    requests是python的一个HTTP客户端库,跟urllib,urllib2类似,那为什么要用requests而不用urllib2呢?官方文档中是这样说明的: python的标准库urllib ...

  10. Xcode8中处理打印日志的配置

    Xcode8中处理打印日志的配置