Java Collection.sort 排序升序, 降序问题
不多说,记住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 排序升序, 降序问题的更多相关文章
- Python 根据两个字段排序 中文排序 汉字排序 升序 降序
Python3写法 代码 # -*- coding: utf-8 -*- # 需求:年龄倒序,姓名正序 from itertools import chain from pypinyin import ...
- 【java】实体类中 按照特定的字段 进行升序/降序 排序
背景: 实际页面上 所有的分值都是按照JSON格式存储在一个字符串中 存储在同一个字段中: {"ownPTotal":"10>0","ownO ...
- C# List.sort排序详解(多权重,升序降序)
很多人可能喜欢Linq的orderBy排序,可惜U3D里面linq在Ios上会报错,所以就必须使用list的排序. 其实理解了并不难 升序降序比较 sort有三种结果 1,-1,0分别是大,小,相等. ...
- C# List.sort排序(多权重,升序降序)
很多人可能喜欢Linq的orderBy排序,可惜U3D里面linq在Ios上会报错,所以就必须使用list的排序. 其实理解了并不难 升序降序比较 sort有三种结果 1,-1,0分别是大,小,相等. ...
- TreeMap升序|降序排列和按照value进行排序
TreeMap 升序|降序排列 import java.util.Comparator; import java.util.TreeMap; public class Main { public st ...
- java面试题:已知一个数组[2,4,6,2,1,5],将该数组进行排序(降序,不能用工具类进行排序),创建两条线程交替输出排序后的数组,线程名自定义
package com.swift; import java.util.Arrays; import java.util.Comparator; public class ArrayThread_Te ...
- js学习篇--数组按升序降序排列
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- C++员工管理系统(封装+多态+继承+分类化+函数调用+读写文件+指针+升序降序算法等一系列知识结合)
1 C++职工管理系统 2 该项目实现 八个 功能 3 1-增加功能 2-显示功能 3-删除功能 4-修改功能 4 5-查找功能 6-排序功能 7-清空功能 8-退出功能 5 实现多个功能使用了多个C ...
- mysql_DML_select_升序降序去重
select *from wsb limit 5;显示前5行 select *from students LIMIT (m,n) (其中m是指记录开始的index,从0开始,表示第一条记录n是指 ...
随机推荐
- elastic search 日期为string类型导致视图无法展示时间的解决办法
尝试将结构化的json数据发送到es(elastic search)上,然后创建视图,这样就能以小时维度查看数据,直接使用post发送到es后,创建索引,结果提示 没有date类型的字段(field) ...
- php登陆绑定手机验证码使用阿里大于接口
https://doc.alidayu.com/doc2/index.htm 一条0.045 元 新注册送10块
- 一份11gR2 rac awr报告的简单分析
昨晚网友发来一份awr报告,希望帮忙分析一下.由于其他信息都没有,仅仅只有一份awr,鉴于目前有大多的朋友还不太熟悉或者说不知道如何去进行awr的分析.我这里就拿这个awr来进行分析,当抛砖引玉了.首 ...
- 教你如何阅读Oracle数据库官方文档
< Ask Oracle官方原创 > Oracle 官方文档 数量庞大,而且往往没有侧重点,让oracle新手看起来很费力.但是,仍有很多Oracle使用者认为任何oracle学习资料都比 ...
- Sentry从0到1
无Sentry 在没有sentry的情况下,他的权限逻辑是这样的:jdbc采用hive权限创建的表,只有hive用户可以看到:hue用户是无法看到的: Sentry 在启用sentry,就是基于sen ...
- TesseractOCR Tutorials
先放上之前收集的资源,有空写博客. 点我
- lwip:与tcp发送相关的选项和函数
1. 禁用Nagle tpcb->flags |= TF_NODELAY 2. tcp_write仅enqueue packet,而不会启动发送. 在tcp_write后调用tcp_output ...
- iview-admin打包笔记
在程序根目录右键打开cmd,输入 npm run build 这时就会进入打包的步骤,打包好之后就会在程序根目录出现一个dist的文件夹,里面有一个index.html文件和另一个dist的文件夹. ...
- HDU 2159 FATE (dp)
FATE Time Limit : 2000/1000ms (Java/Other) Memory Limit : 32768/32768K (Java/Other) Total Submissi ...
- poj 3046 Ant Counting(多重集组合数)
Ant Counting Time Limit : 2000/1000ms (Java/Other) Memory Limit : 131072/65536K (Java/Other) Total ...