不多说,记住2点, 直接上代码(下面是降序):

package mall;

import java.util.ArrayList;
import java.util.Collections;
import java.util.Comparator;
import java.util.List; public class TestSort2 {
public static void main(String[] args) {
List<Test> list = new ArrayList<Test>(); String [] n = {"a", "b", "c", "d", "e", "f", "g" , "h" , "i", "j", "k"};
double [] d = {0, 0, 34581, 0, 22017, 20807, 0 , 0 , 20443.2, 44457,0};
double [] a = {400, 0, 400, 200, 150, 400, 600, 300, 200, 500, 0};
for (int i = 0; i < a.length; i++) {
Test s = new Test(n[i], d[i], a[i]);
list.add(s);
} //假如A的值大于B,你返回1 ,这样调用Collections.sort()方法就是升序
//假如A的值大于B,你返回-1,这样调用Collections.sort()方法就是降序
Collections.sort(list, new Comparator<Test>() {
//总销售额(大->小)
public int compare(Test o1, Test o2) {
if(o1.getTotalPrice().compareTo(o2.getTotalPrice()) == 1)
return -1;
return 0;
}
}); for (int i = 0; i < list.size(); i++) {
Test s = list.get(i);
System.out.println("价格:"+s.getTotalPrice() + " , 面积:" + s.getArea());
}
} static class Test {
private String name;
private Double totalPrice;
private Double area; public Test(String name, double totalPrice, double area){
this.name = name;
this.totalPrice = totalPrice;
this.area = area;
} public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public Double getTotalPrice() {
return totalPrice;
}
public void setTotalPrice(Double totalPrice) {
this.totalPrice = totalPrice;
}
public Double getArea() {
return area;
}
public void setArea(Double area) {
this.area = area;
} }
}

Java Collection.sort 排序升序, 降序问题的更多相关文章

  1. Python 根据两个字段排序 中文排序 汉字排序 升序 降序

    Python3写法 代码 # -*- coding: utf-8 -*- # 需求:年龄倒序,姓名正序 from itertools import chain from pypinyin import ...

  2. 【java】实体类中 按照特定的字段 进行升序/降序 排序

    背景: 实际页面上  所有的分值都是按照JSON格式存储在一个字符串中 存储在同一个字段中: {"ownPTotal":"10>0","ownO ...

  3. C# List.sort排序详解(多权重,升序降序)

    很多人可能喜欢Linq的orderBy排序,可惜U3D里面linq在Ios上会报错,所以就必须使用list的排序. 其实理解了并不难 升序降序比较 sort有三种结果 1,-1,0分别是大,小,相等. ...

  4. C# List.sort排序(多权重,升序降序)

    很多人可能喜欢Linq的orderBy排序,可惜U3D里面linq在Ios上会报错,所以就必须使用list的排序. 其实理解了并不难 升序降序比较 sort有三种结果 1,-1,0分别是大,小,相等. ...

  5. TreeMap升序|降序排列和按照value进行排序

    TreeMap 升序|降序排列 import java.util.Comparator; import java.util.TreeMap; public class Main { public st ...

  6. java面试题:已知一个数组[2,4,6,2,1,5],将该数组进行排序(降序,不能用工具类进行排序),创建两条线程交替输出排序后的数组,线程名自定义

    package com.swift; import java.util.Arrays; import java.util.Comparator; public class ArrayThread_Te ...

  7. js学习篇--数组按升序降序排列

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  8. C++员工管理系统(封装+多态+继承+分类化+函数调用+读写文件+指针+升序降序算法等一系列知识结合)

    1 C++职工管理系统 2 该项目实现 八个 功能 3 1-增加功能 2-显示功能 3-删除功能 4-修改功能 4 5-查找功能 6-排序功能 7-清空功能 8-退出功能 5 实现多个功能使用了多个C ...

  9. mysql_DML_select_升序降序去重

    select *from wsb   limit 5;显示前5行 select *from students LIMIT  (m,n) (其中m是指记录开始的index,从0开始,表示第一条记录n是指 ...

随机推荐

  1. MySQL--DROP TABLE与MySQL版本

    ======================================================================== DROP TABLE与MySQL版本 MySQL在5. ...

  2. apache flink kubernetes 运行试用

    类似docker-compose 运行模式,使用的是deploy 的模式 deploy yaml 文件 deploy-k8s-yaml apiVersion: extensions/v1beta1 k ...

  3. Nginx+redis部署tomcat集群

    一.部署环境: 两个tomcat实例部署在Ubuntu 14上,IP地址分别为192.168.1.110和192.168.1.111,Nginx和redis部署在windows7上,IP地址为192. ...

  4. chrome浏览器network面板出现:Provisional headers are shown 提示

    一般来说,如果看到这个提示,说明这个请求并没有发送出去. 具体原因有多种: 请求被某些扩展如 Adblock 拦截了 请求被墙了 走本地缓存或者 dataurl 的请求 client发送请求后,由于各 ...

  5. maven 指定 jdk 版本

    方法1:直接修改 本地  settings.xml 文件 <profiles>  </profiles> 之间加入 下面的 <profile> <id> ...

  6. Oracle-EXP-00011 表不存在

    Oracle-EXP-00011 表不存在 点我,点我~

  7. java GUI(忽略)

    觉得学起来很鸡肋.就不学这玩意了

  8. busybox下的tftp client

    # tftp -p -l file host    # put local file to remote host # tftp -g -r file host    # get remote fil ...

  9. C/C++基础----表达式

    1 基本概念 类型转换,小整型通常会被提升. 运算符重载,运算对象的个数.运算符的优先级和结合律都是无法改变的. 左值右值,对象被用做右值时,使用的是对象的值(内容):用做左值时,使用的是对象的身份( ...

  10. Java\学习——字符串

    import java.util.Scanner; public class cys1 { /** * @param args */ public static void main(String[] ...